何もせずに実行中のプロセスを開始したいと思います。というプロセスを開始するとしましょうsadhadxk
。これを実行すると、pgrep -x "sadhadxk"
通常のプロセスと同様にPID番号が取得されます。
もしそうなら、仮想プロセスを開始する方法はありますか?
答え1
次のことができます。
perl -MPOSIX -e '$0="sadhadxk"; pause' &
これをサポートするシステムでプロセス名とargv [0]を設定する必要があるため、出力にsadhadxk
表示され、ps
一致する必要がありますps -f
。pgrep -x
pgrep -fx
答え2
> bash -c 'exec -a sadhadxk sleep 1000000' &
pgrep
動作しませんが、
> ps | grep '[s]adhadxk'
18931 [...] sadhadxk 1000000
修正:pgrep
機能しますが、コマンド名(実行中のバイナリの名前)では機能せず、コマンドラインでのみ機能します。
> pgrep -f sadhadxk
18931
答え3
この試み:
sleep 600 &