Вырезать из строки (Помогите пожалуйста)

Модератор: Модераторы разделов

Amazik
Сообщения: 47
ОС: Gentoo

Вырезать из строки

Сообщение Amazik »

Здравствуйте уважаемые гуру, помогите пожалуйста решить проблему.
Суть проблемы : необходимо "вырезать" из строки номер процесса.
Сама строка получается таким образом: ps ax |grep -m 1 sshd (sshd взят для примера) ,
что возвращает:
6789 ? Ss 0:00 /usr/sbin/sshd
Пытался настраивать grep и ps чтобы по значению grep'а показывал только номер процесса (в данном случае 6789) , не получилось :( по этому единственная идея - это вырезать из строки ...
Помогите пожалуйста это сделать в скрипте ...
Спасибо
Спасибо сказали:
Аватара пользователя
Skladnoy
Сообщения: 90
ОС: Debian

Re: Вырезать из строки

Сообщение Skladnoy »

$ man pgrep

Код: Выделить всё

$ pgrep sshd
5407
5764
5765
Спасибо сказали:
Amazik
Сообщения: 47
ОС: Gentoo

Re: Вырезать из строки

Сообщение Amazik »

спасибо, но sshd использовался для примера! т.к. использоваться будет на процессах имеющих одинаковое название , но запущенных с разными параметрами. По этому я ищу grep'ом по значению одного параметра и получаю ID процесса...
Прочитал про pgrep, на мой взгляд это не то, или я не совсем понял как его использовать ...
Помогите пожалуйста
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Вырезать из строки

Сообщение diesel »

ps aux |grep '/usr/sbin/sshd' |grep -v 'grep /usr/sbin/sshd'|awk '{print $2}'
Спасибо сказали:
Amazik
Сообщения: 47
ОС: Gentoo

Re: Вырезать из строки

Сообщение Amazik »

Огромное спасибо, это то , что нужно !
Спасибо сказали: