Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gnu parallel 如何在没有冗余的情况下合并所有输入参数?_Gnu Parallel - Fatal编程技术网

Gnu parallel 如何在没有冗余的情况下合并所有输入参数?

Gnu parallel 如何在没有冗余的情况下合并所有输入参数?,gnu-parallel,Gnu Parallel,我想得到所有的组合,而不需要替换args(文件)A、B和C 这就是我想要的组合 A B B C A C 没有像ba这样的冗余 使用GNU parallel可以轻松做到这一点吗 我当前的命令如下所示: parallel 'echo {1} {2}' ::: (ls *txt) ::: (ls *txt) 但这会打印所有组合 另外,文件比三个文件多得多,所以请只提供一般解决方案。没有优雅的解决方案: parallel 'test "{1}" \< "{2}" && ech

我想得到所有的组合,而不需要替换args(文件)A、B和C

这就是我想要的组合

A B
B C
A C
没有像
ba
这样的冗余

使用GNU parallel可以轻松做到这一点吗

我当前的命令如下所示:

 parallel 'echo {1} {2}' ::: (ls *txt) ::: (ls *txt)
但这会打印所有组合


另外,文件比三个文件多得多,所以请只提供一般解决方案。

没有优雅的解决方案:

parallel 'test "{1}" \< "{2}" && echo {1} {2}' ::: *txt ::: *txt
parallel'test“{1}”\<“{2}”&&echo{1}{2}::*txt::*txt

太棒了!从未听说过测试;看起来很有用。顺便说一句,我觉得这个解决方案相当优雅。如果你知道答案,它与上面的答案非常相似:有没有一种方法可以包含a、B和C,而不添加B a等等?并行--xapply echo:::a B C::a B C;或者简单地平行回波{}{}:::a b c