Как показать процессы, которые используют более 30% ЦП?

Если у вас есть perl-rename (называется rename в системах на базе Debian, perl-rename в других), вы можете сделать:

perl-rename -n 's/^[0-9a-z]{16}$/$&.txt/' *

Если это сделает то, что вы хотите удалите -n , чтобы он действительно переименовал файлы. Синтаксис perl-rename - это команда perl. Здесь мы используем оператор подстановки ( s / from / to / ), который заменит из на на . от в данном случае - это ваше регулярное выражение, а от до - это специальная переменная $ & , которая означает «все, что было найдено», плюс расширение . txt .


Чтобы сделать это с помощью оболочки оболочки (используйте подход @ Кусалананды или @ Sundeep , это просто для завершения):

for f in [0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z]; do
    mv -- "$f" "$f".txt
done

С помощью GNU find :

find . -regextype posix-extended -regex '.*/[0-9a-z]{16}' -exec mv {} {}".txt" \;

1
14.07.2016, 01:40
2 ответа

Вы можете использовать фильтрацию внутри top с o (маленькая буква «o»). После нажатия вы увидите строку для вашей команды (что-то вроде добавьте фильтр №1 (без учета регистра) как: [!] FLD? VAL . Просто запишите, что вы хотите увидеть: % CPU > 30.0 . И нажмите Enter . Тада!

Более подробную информацию можно найти в разделе ФИЛЬТРАЦИЯ в окне раздела man top


Старая часть сообщение:

ps -eo %cpu,args | awk '$1 >= 30 {print}'

ps команда перечисляет все процессы с их использованием процессора (в процентах) и аргументами (см. man ps для дополнительных опций в разделе СТАНДАРТНЫЕ ФОРМАТЫ СПЕЦИФИКАТОРОВ ) и awk , чем выводить только их с первым столбцом > = 30.

1
27.01.2020, 23:47

Для Рел выполните команду top . Затем нажмите shift + f, затем нажмите k, а затем Enter. Это отсортирует вывод по загрузке ЦП.

0
27.01.2020, 23:47

Теги

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