pgrep
使いたいプロセスのpidを探す、例えば
$ pgrep bluetoothd
441
ただし、検索に必要なプロセスは、次のラッパーで実行されますRunFIDProcess
。
[cama@dc1-dev-lin-1204 tests]$ ps -ef | grep RunFIDProcess
tps 544 1 0 Dec13 ? 00:00:00 /bin/sh .//RunFIDProcess CASE_SJDI SJdi -c SJdi.auto.cfg -m PRIMARY_WARM
tps 546 1 0 Dec13 ? 00:00:00 /bin/sh .//RunFIDProcess CASE_ETH Eth -c Eth.cfg
tps 547 1 0 Dec13 ? 00:00:00 /bin/sh .//RunFIDProcess CASE_DBWEBSERVER DbWebServer
tps 556 1 0 Dec13 ? 00:00:00 /bin/sh .//RunFIDProcess CASE_TABLE_PROXY TableProxy -c TableProxy.cfg
cama 4519 1 0 07:30 ? 00:00:00 /bin/sh .//RunFIDProcess CASE_SJDI SJdi -c SJdi.auto.cfg -m PRIMARY_WARM
cama 4524 1 0 07:30 ? 00:00:00 /bin/sh .//RunFIDProcess CAMA_DS5_QRY DaqSvr -m cold -c cama_DaqSvr.DS5.cfg
cama 4530 1 0 07:30 ? 00:00:00 /bin/sh .//RunFIDProcess CAMA_US_OSUB Osub -c cama_Osub.US.auto.cfg -Cold
cama 4534 1 0 07:30 ? 00:00:00 /bin/sh .//RunFIDProcess CAMA_DS7_QRY DaqSvr -m cold -c cama_DaqSvr.DS7.cfg
だから、
[cama@dc1-dev-lin-1204 tests]$ pgrep CAMA_US_OSUB
何も返しません。
名前と最初のコマンドライン引数でプロセスを見つける方法は?
答え1
各プロセスの完全な引数リストを取得できるように-f
切り替えます。pgrep
したがって、pgrep -f CAMA_US_0SUB
そのパラメータを使用して何か(または実際にその名前を持つプロセス)を取得できます。