Shell脚本如何从文件读取输入

Shell脚本如何从文件读取输入

我需要从以下格式给出的文件中读取输入。

$ ./process_data.sh arg1 < input_data.txt

如何读取input_data我的 shell 脚本process_data.sh

答案1

在这种用法中,有几种方法可以读取它: while 构造(将输出参数和文件 input_data.txt 的每个字符串)

#!/bin/bash
echo $1
while read STRING
do
    echo $STRING
done

awk(将输出参数以及文件输入数据的第二列和第三列)

#!/bin/bash
echo $1
awk '{print $2" "$3}'

等等。您可以使用 sed、cut 和许多其他 unix 实用程序,如示例中所示。实用程序的选择取决于您需要如何转换输入数据。当然,您可以根据需要更改示例。

祝你好运=)

答案2

在您的 process_data.sh 中您可以编写以下代码

while read line
do
   #work on data
done < `cat input_data.txt`

相关内容