ps aux | grep возвращает pid для себя тоже
Я использую эту команду для получения идентификатора процесса другой команды:
ps aux | grep 7000.conf | awk '{print $2}'
Это вернет два PID:
7731
22125
Мне нужен только первый. Второй - это PID для grep
в приведенной выше команде. Заранее благодарим любого, кто знает, как изменить приведенную выше команду, чтобы вернуть только первый pid.
ps открыть новую команду, которая делает то же самое
Ответы
Ответ 1
В этом конкретном случае, избегая .
к тому, что я предполагаю, что он должен был делать, должен работать:
ps aux | grep '7000\.conf' | awk '{print $2}'
Кроме того, исключить grep
:
ps aux | grep 7000.conf | grep -v grep | awk '{print $2}'
Ответ 2
ps aux | grep "[7]000.conf"
ps aux | grep "[7]000.conf"
будет работать.