Linuxで7日前の作業/プロセスを識別する

Linuxで7日前の作業/プロセスを識別する

過去7日間にLinuxで実行されているプロセスを識別する方法は?

答え1

開始は次のとおりです。

ps -eoetime,pid,user,cmd --sort -etime

表示する情報を選択できます。man ps長いリストをご覧ください。上記のコマンドは、すべてのプロセスを経過時間の降順でリストします。少なくとも7日間実行されたgrepプロセスawkのみを表示するには、データに対して操作を実行する必要があります。etimepid

残念ながら、このetime形式はスクリプトよりも人のために設計されていますが、以下は機能します(まだテストしていませんが)。

ps -eoetime=,pid= | awk 'int(substr($1,1,index($1,"-"))) >= 7 { print }'

コマンドラインオプションの簡単な説明:

-e             show all processes
-eo...         same as -e -o...
-oetime=,pid=  for each process, print the elapsed time and pid.
               The '=' suppress the column headers
--sort -etime  sort the processes in descending order by elapsed time
               (+etime would have been ascending order)

関連情報