|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Andrey Ostanovsky 2:5030/1957 26 May 2005 16:01:02 To : Alex Ivanov Subject : Получить pid запущеного процесса -------------------------------------------------------------------------------- 26 May 05 14:27, you wrote to All: AI> Есть некая гипотетическая программа (в моем случае - urlsnarf из AI> пакета dshiff), не умеющая создавать pid файл при запуске. Можно ли в AI> момент запуска её из скрипта (в фоне) как-либо получить её PID? (Чтоб AI> записать его в файл, для дальнейшего использования). Вариант типа ps AI> -aux | grep "/usr/local/sbin/urlsnarf -i ng2" |awk '{ print $2 }' не AI> катит по причине: 1. Возвращает два PID (самого urlsnarf и grep) 2. AI> Хочется решить задачу в общем виде, В "общем виде" - надо более полно использовать возможности awk, вот пример: # ps -ax|grep adjkerntz 185 ?? Is 0:00,00 adjkerntz -i 697 p0 S+ 0:00,01 grep adjkerntz -i В то же время фильтр с позиционированием по порядковому номеру элемента строки на awk - возвращает единичный результат. # ps -ax|awk '$5~ /adjkerntz/' 185 ?? Is 0:00,00 adjkerntz -i AI> и теоритически могут быть два процесса с одним именем... Хуже - если три и безо всяких дополнительных признаков.:) А первый или последний ухватить достаточно легко. Andrey --- GoldED+/BSD 1.1.5 * Origin: PGP KeyID 2ABEC67A andrey @ ostanovsky. spb. ru (2:5030/1957) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/28604295bbda.html, оценка из 5, голосов 10
|