提问人:Gabriel G. 提问时间:10/6/2023 更新时间:10/6/2023 访问量:11
在 bash 中函数内的 for 循环中读取变量
Reading variable in for loop inside a function in bash
问:
假设我有这个函数
myfunc() {
parallelinput="$1"
#strip prefix
filenames1=( "${parallelinput##*/}" )
echo /home/"$i"/"$filenames1"_count.tsv
echo "$1"
}
export -f myfunc
#I 想要并行运行
STEPS=( 13 "13.5" )
for i in "${STEPS[@]}"
do
parallel -j 2 myfunc {} ::: /home/$i/*vcf
done
如何让我的函数读取 STEPS 数组以输出正确的目录,而不会重复? 这段代码没有给我 myfunc 内部$i。 此外,在我的情况下,使用 myfunc 非常重要,因为如果没有它,我就无法在并行内执行正确的代码。所以并行 -j 2 myfunc 必须保留
答: 暂无答案
评论
parallel
parallel -j 2 myfunc /home/{}/*vcf ::: 13 13.5