以下命令正确更改了 2 个文件的内容。
sed -i 's/abc/xyz/g' xaa1 xab1
但我需要做的是动态更改几个这样的文件,我不知道文件名。我想编写一个命令,该命令将从当前目录中读取所有文件,xa*并sed应更改文件内容。
xa*
sed
更好的是:
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) #