我想根据以下代码示例在bash脚本中运行命令。尽管J和I变量包含文件名(这些文件名是从samples.list.txt中读取的),但这些字符串无法插入命令中。怎么了?非常感谢!
cat work/sample.list.txt | while read line;
do
arrIN=(${line// / })
i=${arrIN[0]}
j=${arrIN[1]}
k=${arrIN[2]}
java -jar some.jar ./input1directory/"$i" ./input2directory/"$j"
done
您可以一次读取多个变量,因此:
while read i j k ; do
java -jar some.jar ./input1directory/"$i" ./input2directory/"$j"
done < "work/sample.list.txt"
每行 read
读取都将获得单词拆分主题,并且单个字段将分配给您在命令行上指定的变量。如果字段多于变量,则将剩余的线分配给指定的最后一个变量。