【发布时间】:2021-02-25 03:26:36
【问题描述】:
所以我正在开发这个程序,该程序将从命令行读取文件并使用 sed 命令将某些模式替换为我希望更改的内容。但是,我正在使用一个函数来读取文件的每一行,然后进入我的 assign2.sed 文件进行编辑。例如,我正在使用的一个文件有 11 行,如下所示。
我的问题是,是否有一种更简单的方法来读取文件的每一行而不是手动输入;读取第 1 行,读取第 2 行,依此类推。是否可以创建一个 for-loop/while 循环,直到没有更多的行可以读取?
#!/bin/bash
for numArguments in $@; do
function readFile() {
read line1
read line2
read line3
read line4
read line5
read line6
read line7
read line8
read line9
read line10
read line11
}
readFile < $numArguments
sed -r -i -f assign2.sed $numArguments
done
【问题讨论】:
-
只需使用
sed -r -i -f assign2.sed "$@"。你根本不需要函数或循环。