Консультация № 28391
27.10.2005, 12:53
0.00 руб.
0 3 2
Как проверить запущен ли процесс и завершить его ? Причем процессов может быть несколько....
с помощью вот такой строки
# ps -x | grep wget | grep -v "grep" | tr -s " " | cut -d" " -f2

я вылавливаю номер процесса или пусто - если процессов нету. Проблема в том что не могу правильно построить условие иои условие цикла

пробовал [$(ps -x | grep inetd | grep -v "grep") -ne ‘‘ ] дает ошибку

Обсуждение

Неизвестный
27.10.2005, 13:16
общий
это ответ
ps -ax|grep wget | cut -b 0-5
получишь номер процесса - если передашь его по конвейеру команде kill, то убьёшь процесс. Замечание: при этом будет выведен номера процесса с твоей командой, но не думаю, чтобы отработка завершения по её pid после всех остальных была существенна.
Неизвестный
27.10.2005, 14:33
общий
это ответ
Здравствуйте, Sniffer!
самое простое:
killall wget
если все-таки нужен скрипт, обращайтесь.
Неизвестный
27.10.2005, 15:35
общий
пример скрипта:#!/bin/bashps ax -o "%p %c" | grep "wget" | (while read pid command; do kill $pid done)
Форма ответа