сокращая выход из команды ps efo cmd | Grep

Я хочу определить, работает ли какой-то определенный процесс. Процесс имеет очень длинное описание, более или менее похожее на

/usr/bin/xpdf -remote myXpdfServer -title Bayes2_notes -papercolor cornsilk -geometry 1910x1019+0+29 /home/simon/research/Ward/Bayes2_notes.pdf

Мне иногда приходится использовать xterm с небольшим количеством столбцов, например n. В этом случае, если я запустил ps -ef, тогда grep для некоторого элемента, находящегося далеко в хвосте этой строки, ps обрезает строку, возвращая только первые n символов, а моя команда grep терпит неудачу.

To исправить это, я пробовал ps efo cmd | grep и т. д. Это помогает некоторым, но не настолько, насколько мне нравится. Например, очевидная команда для попытки:

ps eco cmd | grep xpdf | grep -v grep

возвращает следующее:

| .................... .............. \ _ / usr / bin / xpdf -remote myXpdfServer

, где эти точки обозначают пробелы, которые не отображаются на этом форуме. Я бы очень хотел избавиться от мусора, особенно пробела, в начале, т. Е. Все, что предшествует / usr. Обратите внимание, что в этом случае не удастся обрезать конвейер или sed или что-то еще: длина строки, возвращаемой ps, определяется количеством столбцов xterm, поэтому сокращение этой строки после обработки не может мне помочь, потому что строка, которую мне нужно исследовать, уже была усечена к тому времени, когда разрезается делать что-то. Я уверен, что единственный способ сделать то, что я хочу сделать, - добавить другой флаг в команду ps ef.

Большое спасибо за любой совет!

1
задан 19 August 2015 в 09:34

1 ответ

Я хочу определить, работает ли какой-то определенный процесс.

Я бы использовал

pidof nameofyourprogram 

См. справочную страницу о статусе существующего состояния.

0
ответ дан 23 May 2018 в 18:06
  • 1
    Спасибо за это, katu! Не знал, что команда существует. К сожалению, мне нужно определить не только имя процесса, но, дополнительно, имя файла. В частности, мне нужно указать, работает ли xpdf определенный файл. Было бы замечательно, если бы pidof имел «-f» флаг, такой как флаг -f для ps, возвращая полное имя процесса. – Leo Simon 19 August 2015 в 18:25

Другие вопросы по тегам:

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