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" будет работать.