【发布时间】:2015-12-31 14:53:45
【问题描述】:
此脚本必须运行 4 次并相应地更改其路径。但只有名称更改了 4 次,路径保持不变。 知道脚本有什么问题吗?我是 bash 新手。
#!bin/bash
File=/tmp/tmp.txt
NAME=(NAME1 NAME2 NAME3 NAME4)
DIR=(/home/path1 /home/path2 /home/path3 /home/path4)
for NAME in "${NAME[@]}"
do
/sbin/myprogram start --read $FILE --path $DIR --name $NAME
done;
一般来说,我正在尝试自动执行此命令:
/sbin/myprogram start --read /tmp/tmp.txt --path /home/path1 --name NAME1
/sbin/myprogram start --read /tmp/tmp.txt --path /home/path2 --name NAME2
/sbin/myprogram start --read /tmp/tmp.txt --path /home/path3 --name NAME3
/sbin/myprogram start --read /tmp/tmp.txt --path /home/path4 --name NAME4
我们可以修改脚本以启动为
for FILE in /tmp/txt
然后每次都分别读取NAME和Dir?
我不想将它直接放在脚本中,因为可能会有更多路径、名称,甚至可能有多个 txt。
【问题讨论】:
-
你可以看看这个帖子:stackoverflow.com/questions/17403498/…
标签: bash scripting arguments parameter-passing