bash脚本应该做一件事;即;将一个接一个的文件名列表以空格分隔到jar文件中。
以下是脚本的一部分
for(i=1;i<=5;i++) do
java <myjar.jar>file$i
done
我希望java <myjar.jar> file$i
行在执行脚本时的样子是
java <myjar.jar> file1 file2 file3 file4 file5
任何帮助?谢谢!
答案 0 :(得分:3)
既然是bash,就这样做:
java <myjar.jar> file{1..5}
答案 1 :(得分:1)
一种方法是利用自动shell文件名扩展:
java myjar.jar file[1-5]
以上假设文件存在于文件系统中。或者,您可以执行以下操作:
java myjar.jar `for i in 1 2 3 4 5; do echo file$i; done`
如果您有大量项目,seq
命令将有所帮助:
java myjar.jar `for i in $(seq 500); do echo file$i; done`
答案 2 :(得分:0)
#!/bin/bash
declare -a listn
for n in $(seq $2 $3) ; do
listn=("${listn[@]}" $n)
done
java "$1" "${listn[@]}"
用三个参数调用脚本:
./the_script myjar.jar 1 5
第一个参数是你的jar名字,下一个是序列中的第一个数字,最后一个是最后的数字。