为目录中的特定文件扩展名追加的Bash脚本



如何在目录中所有.txt文件的所有行前面加上一个特殊字符?我刚开始写bash脚本,但在这方面遇到了困难。我只知道使用grep函数,但那只是为了搜索关键字。

现在,我有这个,

sed -i 's/^/#/' Machine1.txt

但是,这仅适用于特定的.txt文件。我想对目录中所有扩展名为.txt的文件执行此操作。还有其他扩展名,比如.tar、.rpm、.sh文件,我想忽略它们。非常感谢。

只需提供一个通配符文件名参数。

sed -i 's/^/#/' *.txt

您可以使用for循环。例如

cd your_folder 
for f in *.txt; do 
sed -i 's/^/#/' "$f";
done 

最新更新