1

特定のプロセスのインスタンスがいくつか実行されており、最後に開始されたプロセスIDのプロセスIDを確認したいと思います。これまでのところ、私はこのコードに到達しました:

ps -aef | grep myProcess | grep -v grep | awk -F" " '{print $2}' |
while read line; do
  echo $line
done

これにより、myProcessのすべてのプロセスIDが取得されます。どういうわけか、このpidの実行時間を比較して、実行時間が最も短いものを見つける必要があります。しかし、私はそれを行う方法がわかりません...

4

2 に答える 2

5

より簡単な方法はpgrep、その-n, --newestスイッチで使用することです。

一致するプロセスの最新(最近開始された)のみを選択します。

または、を使用したくない場合は、開始時刻pgrepを使用して並べ替えることができます。ps

ps -ef kbsdstart
于 2013-03-17T15:05:45.567 に答える
2

pgrepを使用します。そのための -n(最新の)オプションがあります。だから試してみてください

pgrep -n myProcess
于 2013-03-17T15:06:46.460 に答える