1. ホーム
  2. regex

Linuxでプロセス名を指定して、プロセスIDだけを取得する方法は?

2023-08-19 13:59:19

質問

linuxで指定したプロセス名のプロセスIDのみを取得する方法は?

ps -ef|grep java    
test 31372 31265  0 13:41 pts/1    00:00:00 grep java

プロセスIDを元に、いくつかのロジックを書こうと思います。では、特定のプロセス名のプロセスIDのみを取得するにはどうすればよいでしょうか。

サンプルプログラムです。

PIDS= ps -ef|grep java
if [ -z "$PIDS" ]; then
echo "nothing"
else
mail [email protected]
fi

どのように解決するのですか?

使用することができます。

ps -ef | grep '[j]ava'

また、もし pgrep が使えるなら、それを使うのがよいでしょう。

pgrep -f java