Как удалить все строки, начинающиеся с «string» в unix sh? - PullRequest
25 голосов
/ 09 ноября 2011

Как удалить все строки в файле, которые начинаются со слова «строка» в sh?Я думал об использовании команды sed.

Ответы [ 4 ]

31 голосов
/ 09 ноября 2011
grep -v '^string' yourfile.txt > stripped.txt
27 голосов
/ 09 ноября 2011

Чтобы сделать это на месте, если ваш sed поддерживает опцию -i, вы можете сделать:

sed -i '/^string/d' input-file
0 голосов
/ 05 ноября 2016

Вы можете использовать Vim в режиме Ex:

ex -sc g/^string/d -cx file
  1. g выбрать все подходящие строки

  2. d удалить

  3. x сохранить и закрыть

0 голосов
/ 09 ноября 2011

sed и grep в ваших ответах не хватает своего друга awk:

awk '!/^string/' inputfile > resultfile
...