pfsense: больше никаких процессов

Причина Ваш sed отказавший то, что, если Вы не указываете многострочный оператор, он управляет на потоке одной строкой за один раз. Несколько начало строки ^ и конец строки $ операторы бессмысленны при строковом представлении вместе как этот, если Вы только смотрите на текст одна строка за один раз.

easist способ свернуть несколько пустых строк с cat. Из страницы справочника:

- s, - сжимать-пробел
подавите повторенные пустые выходные строки

Это работает как это:

$ echo -e "hello\n\n\nworld" | cat -s
hello

world

Если Вы хотите удалить пустые строки полностью вместо того, чтобы сжать их, использовать grep:

$ echo -e "hello\n\n\nworld" | grep -v '^$'
hello
world

Обратите внимание на это, если Вы действительно хотите выполнить в этом sed необходимо использовать сложные выражения и действия. Вот пример (благодаря fred), который сворачивает любое количество пробелов sequencial в единственную пустую строку:

$ echo -e "hello\n\n\nworld" | sed -re '$!N;/^\n$/!P;D'
hello

world

Вы видите почему cat -s намного легче, если сворачивание нескольких пустых строк является всем, что Вы после!

2
24.03.2014, 14:08
1 ответ

В моем случае у меня была та же проблема, потому что задание cron выполнялось каждую минуту, но не завершалось. В результате были созданы сотни процессов, каждый из которых работал в оболочке, изнуряющей систему.

Поэтому проверьте с помощью ps ax , если вы видите много повторяющихся процессов, возможно, проверьте ваши задания cron или что-то еще, что может запускать кучу дополнительных оболочек.

1
27.01.2020, 22:22

Теги

Похожие вопросы