将行作为args传递给脚本

时间:2010-04-08 16:41:13

标签: linux shell

如何将文本文件中的每一行作为参数传递给我编写的脚本?因此,每一行本身就是每次脚本的一个arg。

3 个答案:

答案 0 :(得分:3)

cat file | xargs --replace script {}

我应该注意,如果您希望将文件的每一行视为脚本的一个参数,请根据{}添加引号,最有可能是“{} \”

答案 1 :(得分:2)

无需cat

xargs -I {} --arg-file input-file script_file {}

答案 2 :(得分:1)

你可以这样做

while read -r line
do
  ./script_i_have_written.sh "$line"
done <"file"

但为什么在你的“script_i_have_written.sh”中,你可以立即解析文本文件

#!/bin/bash
# script_i_have_written.sh
while read -r line
do 
  echo "do something with $line"
done <"file"