CentOS - Top принимает 100% CPU

Вместо использования which, который не работает, когда он больше всего нужен, используйте type, чтобы определить, что будет запущено при вводе команды:

$ which set
./set
$ type set
set is a shell builtin

Оболочка всегда ищет встроенные модули перед поиском в $PATH, поэтому установка $PATH здесь не поможет.

Лучше всего переименовать исполняемый файл во что-то другое, но если в задании требуется, чтобы программа называлась set, можно воспользоваться функцией оболочки:

$ function set { ./set; }
$ type set
set is a function
set ()
{
    ./set
}

(Это работает в bash, но другие оболочки, например ksh, могут этого не позволить. См. ответ mikeserv для более переносимого решения.)

Теперь, набрав set, вы запустите функцию с именем "set", которая выполнит ./set. GNU bash ищет функции перед поиском встроенных, а встроенные ищет перед поиском $PATH. Более подробная информация об этом содержится в разделе "ВЫПОЛНЕНИЕ КОМАНД" на странице bash man.

См. также документацию по builtin и command: help builtin и help command.

1
09.03.2019, 14:08
1 ответ
Команда

topбудет читать файл /var/run/utmpдля получения активного номера пользователя. если файл слишком велик для чтения. top тратит больше времени на его чтение, что может занять 100% загрузки ЦП. уменьшите размер utmp, команда top не будет сильно загружать ЦП

1
27.01.2020, 23:43

Теги

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