有个shell命令,支持一个参数运行,比如:shell-test 参数a。但是在实际使用的时候常常需要有多个相同性质的参数运行,类似于shell-test a && shell-test b & shell-test c的格式,想用一个shell脚本shell-test2.sh包装一下,运行时候bash shell-test2.sh a b c即可,参数之间以空格隔开,这样使用方便些。
这个shell-test2.sh该怎么写?我知道可以用$1、$2传入变量,但是对于这种其实是执行多个相同变量的,&&这种的,该如何写?谢谢
$ cat shell-test.sh
#!/bin/bash
echo "Running with argument $1"
$ cat shell-test2.sh
#!/bin/bash
index=1;
argc=$#;
exitcode=0;
while [ $index -le $argc -a $exitcode -eq 0 ]
do
echo "Run \"sh ./shell-test.sh $1\"";
sh ./shell-test.sh $1;
exitcode=$?;
index=$((index+1));
shift 1;
done
$ sh ./shell-test.sh a b c d
Run "sh ./shell-test.sh a"
Running with argument a
Run "sh ./shell-test.sh b"
Running with argument b
Run "sh ./shell-test.sh c"
Running with argument c
Run "sh ./shell-test.sh d"
Running with argument d
shell-test a && shell-test b & shell-test c把你这个指令写到一个shell里面,然后传参给abc