2016-03-23 13 views
0

未使用(実行中の)pidファイルをすべて一覧表示するには、シェルスクリプトが必要です。LINUX実行されていないPID-sを取得するには?

pidが実行されていないかどうかを確認するにはどうすればよいですか?

+0

ファイル(ファイルの内容?ファイル名?)からpidを取得し、そのpidのプロセスリストを確認します。 –

+0

すべての.pidファイルを/ var/runディレクトリにリストします。すべての.pidファイルにプロセスIDを示す番号が含まれています。実行中のプロセスと比較する必要があります。実行中のプロセスにそのPIDが含まれていない場合それを標準出力に書き出す必要があります。 問題は、すべてのpidを実行中のすべてのプロセスと比較することができないことです。 – Aaron

+1

'ps aux | grep '^ $ pid''、基本的に –

答えて

1

これはあなたの探しているものですか?

#!/bin/bash 
while read -d $'\0' -r f; do 
    pid="$(cat "$f")" 
    if ! ps "$pid" &> /dev/null; then 
    echo "$pid" 
    fi 
done < <(find /run -type f -regextype posix-basic -regex '^.*\.pid$' -print0)