小编典典

更改多个文件

all

以下命令正确更改了 2 个文件的内容。

sed -i 's/abc/xyz/g' xaa1 xab1

但我需要做的是动态更改几个这样的文件,我不知道文件名。我想编写一个命令,该命令将从当前目录中读取所有文件,xa*sed应更改文件内容。


阅读 83

收藏
2022-05-22

共1个答案

小编典典

更好的是:

for i in xa*; do
    sed -i 's/asd/dfg/g' $i
done

因为没有人知道那里有多少文件,而且很容易打破命令行限制。

当文件太多时会发生以下情况:

# grep -c aaa *
-bash: /bin/grep: Argument list too long
# for i in *; do grep -c aaa $i; done
0
... (output skipped)
#
2022-05-22