包含变量shell脚本的文件

时间:2015-10-09 14:40:49

标签: linux bash shell

我有一个依赖于3个变量的脚本。比如:

#!/bin/bash
/home/sugi/Desktop/rtg-tools-3.5.1/rtg vcfeval -b $1 -c $2 -t /home/sugi/Desktop/hg19.sdf --sample $3 -f AVR -o /home/sugi/Desktop/eval_{$3}
exit

我想在样本列表上执行此脚本。因为我有3个文件,包含样本的位置和样本名称。对于文件的每个条目,应运行上述命令。每个文件的每行条目数相同。

为此,我试过这个:

cat file1.txt file2.txt file3.txt | xargs -i myscript.sh  {} {} {}
然而,这不起作用。我已经在stackoverflow上尝试了几个线程,例如“带有多个参数的xargs。感谢任何帮助。感谢。

2 个答案:

答案 0 :(得分:0)

如果三个变量来自三个单独的文件,则应该

while read a b c; do ..your_script_here.. done < <(paste file1 file2 file3)

将变量称为$ a,$ b,$ c在正文中。

答案 1 :(得分:0)

组合paste和xargs:

paste file[1-3].txt | xargs -n3 myscript.sh