-4

我已经看到向每个文件添加新行的方法(一次 10 个文本文件+),但这通常涉及创建一个新文件。有没有一种方法可以在不需要制作临时文件的情况下添加新行(基本上是源文件和目标文件应该相同)。

4

3 回答 3

9

如果你想在一组文件中追加一行,即使在 shell 中也很容易:

for file in $files ; do
    echo "$line" >> "$file"
done

如果要在文件中间添加一行,则必须使用临时文件。

于 2012-09-08T00:30:07.610 回答
3

要将换行符插入到工作目录中所有文本文件的末尾:

sed -i -e '$G' *.txt
于 2012-09-08T00:31:45.113 回答
1

例如,如果您想递归当前目录并在找到的每个 *.txt 文件的末尾添加一行,您可以这样做:

find . *.txt -exec sh -c 'echo "some text here" >> {}' \;
于 2012-09-08T00:29:55.117 回答