Mac を使用して、実行中の特定のプロセスのインスタンス数を数える最良の方法は何でしょうか? ffmpeg
これは、自分のマシンで実行されているプロセスの数を見つけるために書いているスクリプト用です。
ここで使うべきtop
ですか?ps aux|grep ffmpeg
? 番号を取得する最良の方法は何でしょうか?
Mac を使用して、実行中の特定のプロセスのインスタンス数を数える最良の方法は何でしょうか? ffmpeg
これは、自分のマシンで実行されているプロセスの数を見つけるために書いているスクリプト用です。
ここで使うべきtop
ですか?ps aux|grep ffmpeg
? 番号を取得する最良の方法は何でしょうか?
grep -c は出現回数を数えます:
count=`ps aux | grep -v "grep" | grep -c ffmpeg`
echo $count
ps aux | grep ffmpeg | wc -l
「ffmpeg」というフレーズに言及しているプロセスの数を取得します。プロセスと同様に、この値から 1 を引く必要がありますps aux | grep ffmpg
。
$ pgrep -c ffmpeg
使用しないとpgrep
、単にgrep
誤検知が発生する可能性があります。
それを避けるために、-C
オプションを試すことができます:
$ ps -C ffmpeg -o pid= | wc -l
ps
お使いのバージョンが正しく解釈することを確認してください。
「wc」というプログラムを探しています -- 「wc -l」は行数を数えます。
詳細は「男トイレ」。
Mac でkillallコマンドを試すことができます。
$ killall -s ffmpg
kill -TERM 20148
kill -TERM 20146
kill -TERM 20140
手段は、-s
あなたが何をするかをリストするだけですが、実際にはプロセスを強制終了しません。にパイプするとwc
、結果が得られるはずです。
$ killall -s ffmpg | wc -l
3
シェル スクリプトでは、次のようなことができます。
num_of_processes=$(killall -s ffmpg | wc -l)