Grep вся строка, которые не делают, запускается с числа (чисел)

Уничтожение процессов, которые используют большую часть ЦП/памяти, напрашивается на неприятности: Только посмотрите на то, что они находятся прямо сейчас на Вашей машине (здесь в настоящее время Firefox, systemd (init), Xorg, терминал гнома, ряд потоков ядра, xemacs; ни один из которого не необязателен). Посмотрите на то, как настроить Linux' OOM-уничтожитель, например, здесь.

Также обратите внимание, что "память, используемая процессом", является туманным понятием, поскольку существуют совместно использованные библиотеки, исполняемые файлы совместно используются, и даже части областей данных. Можно придумать некоторое число путем обвинения каждого пользователя в части использованного пространства, но даже складывания, который действительно не дает "память, используемую" (еще меньше "памяти, освобожденной, если процесс уходит", совместно использованные части остаются).

9
21.08.2018, 06:22
3 ответа

GREP -V '^ [0-9]'

выкроет все линии, которые не относятся ( - v ) Начало спичек ^ С числом [0-9]

[0-9]

$ cat test
string
string123
123string
1string2
$ grep -v '^[0-9]' test
string
string123

или если вы хотите удалить все слова, которые начинаются с цифры

sed 's/[[:<:]][[:digit:]][[:alnum:]_]*[[:>:]]//g'

или с ярлыками и утверждениями

sed 's/\<\d\w*\>//g'

, например

$ cat test
one
two2
3three
4four4
five six
seven 8eight
9nine ten
11eleven 12twelve
a b c d
$ sed 's/[[:<:]][[:digit:]][[:alnum:]_]*[[:>:]]//g' test
one
two2


five six
seven 
 ten

a b c d
19
27.01.2020, 20:04

Чтобы удалить все слова из строки, которая начинается с номера с SED , вы можете сделать:

sed 'x;s/.*//;G
     s/[[:space:]][[:punct:]]\{0,1\}[0-9][^[:space:]]*//g
     s/\n//'

... или, если вы хотели только слова, которые не начинаются с напечатаны с напечатанными на Отдельная линия:

sed 'y/!\t "'"'?/\n\n\n\n\n\n/;/^[_[:alpha:]]/P;D"

... Приведенное выше должно делать довольно хорошо. Вы захотите адаптировать \ N EWLINE y /// Перевод для делителей, которые вы думаете, актуальны. И SED Реализация в зависимости от того, вы также можете захотеть фактический <вкладку> на месте \ T .

2
27.01.2020, 20:04

Это зависит от того, как вы определяете строку (например, если вы отсчитаете символы пунктуации на строку или нет). Тем не менее, вы можете начать с чего-то вроде

grep -Po '\b[^[:digit:]].*?\b' file
3
27.01.2020, 20:04

Теги

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