Ответ 1
sed -ie '$d' filename.txt
Опция i
сообщает sed
редактировать файл на месте.
Я хочу удалить последнюю строку файла в определенном состоянии. Я использовал sed и сокращал, но они работают только с потоком вывода, но я хочу сделать это в файле. Кто-нибудь может мне помочь? Спасибо заранее.
sed -ie '$d' filename.txt
Опция i
сообщает sed
редактировать файл на месте.
Я буду использовать вариант на другом ответе и предлагаю простое использование ed:
ed tmp.tmp << EOC
$
d
w
q
EOC
В противном случае вы можете использовать sed/cut во временном файле и mv
, чтобы перезаписать начальный файл.
Вы всегда можете сделать:
cat * > out
Где вы можете удалить "cat *" с тем, что вы делаете, а выход - результатом этой команды.
Я могу более внимательно рассмотреть, если вы предоставите более подробную информацию о том, что вы пытаетесь сделать.