我想写一个脚本来启动一些守护进程
我保留了一些没有username
和path
s的相同内容的脚本
但是,为了使脚本更普遍,我试图使它更通用,并通过循环进行。
这些是我想要运行的通用输入和脚本。
输入文件:input.txt
pathA userA
pathB userB
...
pathZ userZ
工作脚本:echos.sh
echo "1: $1"
echo "2: $2"
并且,预期结果是:
1: pathA
2: userA
1: pathB
2: userB
....
1: pathZ
2: userZ
但是,我无法编写能够提供预期结果的正确脚本。
这是我写的脚本。 (我知道这肯定会失败......):loop.sh
(我像$ loop.sh input.txt
一样运行)
#listfile=$1
listlines=`cat $1`
for args in $listlines
do
bash echos.sh $args
done
我怎样才能获得/修复它?
对不起,我忘了从echo $args
...
loop.sh
答案 0 :(得分:1)
问题尚不清楚,但我想你正在寻找:
while read path user; do
bash echos.sh $path $user
done < input.txt
答案 1 :(得分:0)
我认为这回答了你的问题,但我不确定。我有点不清楚。
#!/bin/sh
if [ -z "$1" ] ; then
>&2 echo "Missing input file argument; exiting."
exit 1
fi
while read -r path user ; do
echo "1: $path"
echo "2: $user"
done < "$1"
input.txt
文件包含:
pathA userA
pathB userB
pathZ userZ
示例输出:
neech@nicolaw.uk:~ $ ./loop.sh
Missing intput file argument; exiting.
neech@nicolaw.uk:~ $ ./loop.sh input.txt
1: pathA
2: userA
1: pathB
2: userB
1: pathZ
2: userZ