ksh循环将文件的结果放入变量

时间:2013-01-08 20:20:17

标签: while-loop ksh

我不确定处理此问题的最佳方法,我猜它正在使用while循环。我有一个带有一组数字的.txt文件(这些数字可以根据运行的另一个脚本而改变) 例如:

0
36
41
53
60

每个号码都在它自己的行上。对于每个数字,我想获得该数字并使用它执行脚本。所以在这个例子中我会调用一个脚本来停止数据库0,之后调用一个脚本来停止数据库36,依此类推,直到它完成列表中的所有数字。

1)while循环是处理此问题的最佳方法吗? 2)我无法确定[[条件]]需要一次获得每个数字1的内容,在哪里可以找到一些额外的帮助?

    while [[ condition ]] ; do
    command1 
    done

出于测试目的,包含所有数字的文件是test.txt。将要执行的脚本是一个python脚本 - “amgr.py stop(来自test.txt的数字)”

2 个答案:

答案 0 :(得分:0)

这是一种更简单的方法:

cat test.txt | xargs amgr.py stop

这将获取您文件的每一行,然后将其作为amgr.py的额外参数:

amgr.py stop 0
amgr.py stop 36
and so on..

答案 1 :(得分:0)

我最终使用这种方法给了我正在寻找的结果。

while read -r line ; do
amgr.py stop $line
done<test.txt