我尝试使用gap
4.10 版本xargs
,如下所示:
$ echo 1 | xargs -I '{}' gap -b <( echo 'Display("{}");' ) <( echo 'QUIT;')
返回
{}
但是,应该是
1
以下作品
$ gap -b <( echo 'Display("123");' ) <( echo 'QUIT;')
123
如果您没有gap
v4.10,您可以替换gap
为cat
并仍然看到我的问题:
$ echo 1 | xargs -I '{}' cat <( echo 'Display("{}");' ) <( echo 'QUIT;')
Display("{}");
QUIT;
我怎样才能实现返回值变成?
Display("1");
QUIT;
从我的角度来看,这与 gap 无关,而是 xargs 和shell 中的进程替换的组合。我有zsh 5.7.1和GNU bash 5.0.3可用。xargs 是GNU 版本 4.8.0。
笔记:
- 我的动机是我想与 shell 的不同参数并行运行一个间隙脚本。
gap
4.10 版还没有允许我避免使用进程替换的选项-c <expr>
(commit )。但是,在计算服务器上,只有差距版本 4.10.0。