Как добавить строку в конец файла, используя sed - PullRequest
0 голосов
/ 10 апреля 2020

Следующая команда работает нормально, если файл test.txt уже существует:

sed -i -e '$a\
This line was appended at the end.' test.txt

Но эта команда занимает две строки. Вместо этого я предпочел бы иметь одну строку, например:

sed -i -e '$a\ This line was appended at the end.' test.txt

Но, к сожалению, возникает ошибка:

sed: 1: "$a\ This line was appended at the end.": extra characters after \ at the end of a command

Возможно ли заставить эту команду работать как одна строка

1 Ответ

3 голосов
/ 10 апреля 2020

Вы можете использовать $'\n', который переводит оболочка на новую строку:

sed -i -e '$a\'$'\n''This line was appended at the end.' test.txt

или

sed -i -e $'$a\\\nThis line was appended at the end.'
...