Я пытаюсь удалить первые две строки и последние четыре строки из моих текстовых файлов. Как я могу сделать это с Bash?Как удалить первые две строки и последние четыре строки из текстового файла с помощью bash?
ответ
Вы можете комбинировать tail и head:
$ tail -n +3 file.txt | head -n -4 > file.txt.new && mv file.txt.new file.txt
+1 для не использования 'cat'. –
Большое спасибо. – rebca
Обратите внимание, что из Git Bash под Windows 'tail -n + 3' работает, но' head -n -4' сообщает 'invalid number of lines'. Похоже на ошибку (возможно, используется старая версия 'head'). –
Голова и хвост
cat input.txt | tail -n +3 | head -n -4
Sed Решение
cat input.txt | sed '1,2d' | sed -n -e :a -e '1,4!{P;N;D;};N;ba'
Вам не нужно использовать 'cat':' tail -n +3 input.txt | ... 'отлично работает (и то же самое для' sed'). – huon
... Спасибо ... :) – Debaditya
Спасибо за решение sed; Я нуждался в нем на машине, которая не допускает отрицательных номеров строк для головы. (Кстати, 4 в первой команде следует отменить.) – eswald
Вы можете позвонить ex-редактор из командной строки bash, используя следующий пример. Обратите внимание, что он использует here document, чтобы завершить список команд ex.
ex text.file << EOF
1,2d
$
-3,.d
x
EOF
Это самый быстрый способ я нашел:
sed -i 1,2d filename
-i неверно –
'-i extension Редактировать файлы на месте, сохраняя резервные копии с указанным расширением. Если задано расширение с нулевой длиной, резервная копия не будет сохранена. Не рекомендуется давать расширение длины при редактировании файлов на месте, поскольку вы рискуете повреждением или частичным контентом в ситуациях, когда дисковое пространство исчерпано и т. Д. – finferflu
Вот что говорит документация, по крайней мере, реализация sed на моей системе ... – finferflu
- 1. Удалить первые две строки файла с ruby
- 2. Прочитайте строки из текстового файла, но пропустите первые две строки
- 3. Как удалить первые строки «X» текстового файла?
- 4. Как читать последние четыре строки из файла?
- 5. Как удалить строки текстового файла?
- 6. Удалить первые две строки и добавить две строки в файл
- 7. Как удалить последние две строки из списка
- 8. Как удалить последние две строки строки?
- 9. удалить последние две строки char!
- 10. SQL: объединить первые две строки текстового поля
- 11. Удалить первые две строки из txt-файлов
- 12. как удалить первые и последние символы из взорванного строки PHP
- 13. Как удалить последние и первые пробелы из строки?
- 14. Выберите только первые четыре строки, из Sql текстового поля
- 15. Python читает первые четыре строки из readlines()
- 16. удалить строки из текстового файла
- 17. Удалить строки из текстового файла
- 18. Удалите первые четыре строки в Excel с помощью Powershell
- 19. Удаление строки из текстового файла в bash?
- 20. bash: отфильтровать последовательные строки из текстового файла
- 21. Удалить строки из текстового файла
- 22. Как удалить пустые строки из текстового файла
- 23. удалить последние N строк из файла bash
- 24. Удалить первые строки X из файла PHP
- 25. Удалить «одиночек» строки из текстового файла
- 26. Получите первые две строки текстового файла в пакетных файлах
- 27. Удалить строки из текстового файла с питоном
- 28. Как удалить строки из текстового файла с помощью пакетного скрипта?
- 29. Как удалить пустые строки из текстового файла с помощью powershell
- 30. Удалить последние четыре символа из строки в C
Следующее может помочь при удалении строки в конце файла: [http://stackoverflow.com/questions/4881930/bash -remove-the-last-line-from-a-file] (http://stackoverflow.com/questions/4881930/bash-remove-the-last-line-from-a-file) – Linger