2

Я не могу найти способ контролировать одну команду терминала Linux.

Я хочу контролировать эту команду:

php index.php parse

Проблема в том, что этот процесс работает слишком быстро, чтобы получить pid, поэтому я надеюсь, что что-то вроде этого:

singlecommandmonitor php index.php parse

Где singlecommandmonitor - программное обеспечение, которое контролирует оперативную память , процессор. использование и php index.php parse - это команда, которую я хочу отслеживать. Он должен работать аналогично sudo, но вместо предоставления корневых прав он должен отслеживать ресурсы.

Я надеюсь, что кто-то поймет, что мне нужно :)

Спасибо за ответы.

2 ответа2

2

Вы можете использовать этот простой инструмент: time:

\time -v php index.php parse

Обратите внимание, что обратная косая черта (или command time или полный путь, такой как /usr/bin/time) избегает выполнения встроенной оболочки. Например, bash имеет собственное встроенное time которое не собирает информацию о памяти процесса.

По умолчанию этот инструмент показывает информацию в сокращенном виде. С опцией -v он показывает это с более понятными описаниями:

$ \time -v sleep 2
    Command being timed: "sleep 2"
    User time (seconds): 0.00
    System time (seconds): 0.00
    Percent of CPU this job got: 0%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 0:02.00
    Average shared text size (kbytes): 0
    Average unshared data size (kbytes): 0
    Average stack size (kbytes): 0
    Average total size (kbytes): 0
    Maximum resident set size (kbytes): 2528
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 0
    Minor (reclaiming a frame) page faults: 203
    Voluntary context switches: 2
    Involuntary context switches: 1
    Swaps: 0
    File system inputs: 0
    File system outputs: 0
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 0
0

Есть внутренний $! переменная, которая содержит pid. Так что это будет делать то, что мне нужно:

php index.php parse & top -p $!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .