Для удаления строк, содержащих 0
в последнем столбце, попробуйте:
$ sed '/0$/d' file
591000000 85 85 2 2 CDL (control)
321000000 40 40 109 4.2 COZI-TV
585000000 84 84 8 8 NJTV
585000000 84 84 8134 10 WTBY
585000000 84 84 62 12 N12WC
657000000 101 101 1014 14 OPTCH
Ваши решения терпят неудачу, потому что:
sed "/ 0 / d"
: / 0 /
означает, что строка соответствия содержит 0
в любой позиции, поэтому она удалит все ваши входные строки.
sed "/ 0 / d"
: / 0 /
означает, что строка соответствия содержит 0
до и после пробела. Он ничего не сделает, потому что ваш ввод не совпадает.
sed "/ \ t0 \ n / d"
и sed "/ 0 \ n / d"
также не совпадают, потому что вы использовали неправильное регулярное выражение.
Заключение, для совпадения 0
в последнем столбце необходимо использовать / 0 $ /
. Вы должны прочитать man sed
или любые статьи о регулярном выражении
для получения более подробной информации.
Обновлено
Согласно ответу @ steeldriver, я обновляю свой ответ, чтобы сохранить строки, содержащие число, заканчивающееся на 0
:
$ sed '/ 0$/d' cat
591000000 85 85 2 2 CDL (control)
321000000 40 40 109 4.2 COZI-TV
585000000 84 84 8 8 NJTV
585000000 84 84 8134 10 WTBY
543000000 77 77 710 10.1 WLNY-10
585000000 84 84 62 12 N12WC
657000000 101 101 1014 14 OPTCH
Como se puede leer en la página del manual:
http://schillix.sourceforge.net/man/man2/getrlimit.2.html
o
http://pubs.opengroup.org/onlinepubs/9699919799/functions/setrlimit.html
estos límites son por proceso