tom*_*sen 5 bash gnuplot process
gnuplot是否允许bash进程替换?
在gnuplot我可以这样做:
plot "<join tmp1 tmp2" u 2:3
Run Code Online (Sandbox Code Playgroud)
但我不能让这个工作:
plot "<join tmp1 <(join tmp2 tmp3)" u 2:3
Run Code Online (Sandbox Code Playgroud)
它应该工作,还是gnuplot不支持bash进程替换?
以下是3个示例输入文件:
猫tmp1
A 1
B 2
C 3
Run Code Online (Sandbox Code Playgroud)
猫tmp2
B 3
C
D 6
Run Code Online (Sandbox Code Playgroud)
猫tmp3
A 4
B 6
C 8
D 10
E 12
Run Code Online (Sandbox Code Playgroud)
以下的命令<被执行用popen(),它使用/bin/sh(见man popen).所以你必须bash明确地调用才能使用进程替换:
plot '< exec bash -c "join tmp1 <(join tmp2 tmp3)"' using 2:3
Run Code Online (Sandbox Code Playgroud)
在您使用单一替换的情况下,以下内容也可以:
plot '< join tmp2 tmp3 | join tmp1 -' using 2:3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
883 次 |
| 最近记录: |