unix GNU通过索引号并行组合输入参数

tkqqtvp1  于 8个月前  发布在  Unix
关注(0)|答案(1)|浏览(65)

我知道GNU Parallel在咀嚼所有输入参数组合方面非常出色。然而,我有一个脚本,我想相反,我有多个数组,我想合并使用一个简单的索引。
这就是我所拥有的:

#!/bin/bash

letters='a b'
numbers='1 2'

f1(){
    echo $1 $2
    echo letter: $1
    echo number: $2
}
export -f f1

parallel f1 {1} {2} ::: $letters ::: $numbers

其给出:

a 1
letter: a
number: 1
a 2
letter: a
number: 2
b 1
letter: b
number: 1
b 2
letter: b
number: 2

我只想得到这样的结果:

a 1
letter: a
number: 1
b 2
letter: b
number: 2

感谢任何帮助,我没有在(长)文档中找到索引开关。

z9gpfhce

z9gpfhce1#

我想你只是想“链接”你的论点:

parallel --link echo {1} {2} ::: 1 2 3 ::: a b c

输出

相反:

parallel echo {1} {2} ::: 1 2 3 ::: a b c

它产生所有的排列:

相关问题