Shell脚本从文件中读取两个值并将它们插入到命令中

时间:2012-12-04 14:43:51

标签: linux shell

我有一个文本文件,比如input.txt,我想运行命令并将输出写入另一个文本文件,比如output.txt。我需要从input.txt读取值,每个值都在一行中,然后我需要将它们插入到命令中,然后将结果写入output.txt文件中。我尝试了以下内容,它适用于我:

for i in `cat input.txt`; do command -m $i -b 100; echo $i; >> output.txt; done

现在,我需要对此做一些改进,但我对Linux的经验很少,所以我需要一些帮助。

我需要做的是: 1)在每个命令结果之前,我想插入以逗号分隔的i值。例如:

i1,result1 
i2,result2
i3,result3

2)我需要将我在命令中使用的第二个固定值从固定值(100)更改为从input.txt读取的值。因此,包含两个值的新输入文件,例如newinput.txt如下:

i1,value1
i2,value2
i3,value3

1 个答案:

答案 0 :(得分:1)

在bash中试试这个:

IFS=','
while read i val; do
  echo -n "$i,"
  command $i $val
done < input.txt > output.txt