我已经看到了为每个文件添加新行的方法(10个文本文件+一次),但这通常涉及创建一个新文件..是否有办法添加新行而无需制作临时文件(基本上源文件和dest文件应该相同)。
答案 0 :(得分:9)
如果你想追加一行到一组文件,即使在shell中也很容易:
for file in $files ; do
echo "$line" >> "$file"
done
如果要在文件的中间添加行,则必须使用临时文件。
答案 1 :(得分:3)
要在工作目录中的所有文本文件的末尾插入换行符:
sed -i -e '$G' *.txt
答案 2 :(得分:1)
例如,如果你想通过当前目录递归并在你找到的每个* .txt文件的末尾添加一行,你可以这样做:
find . *.txt -exec sh -c 'echo "some text here" >> {}' \;