GNU/Linux >> Linux の 問題 >  >> Linux

Linux –過去10秒間に実行されたプロセスのコマンドラインを表示するにはどうすればよいですか?

過去10秒間に実行されたプロセスをログに記録して一覧表示するビューはありますか?

特にコマンドラインをトレースしたい。

承認された回答:

プロセスが終了していない場合は、次の方法で見つけることができます:

ps axho etime,cmd| sed ':a;s/^(0*) /10/g;ta' | sort | less

ただし、プロセスがすでに終了している場合は、確信が持てません。

検索する場所を知っている必要があります…

警告! 次の作業は、バイナリがキャッシュメモリにない場合、つまり、しばらくの間アクセスされなかった場合にのみ機能します。

たぶん単純なls -ltru 十分かもしれません:

/bin/ls -ltru /etc/init.d | tail

それ以外の場合、より洗練されたコマンドは次のようになります。

find /usr/bin -type f -amin -1

find ${PATH//:/ } -type f -amin -1

find ${PATH//:/ } /home/*/bin -type f -amin -1

1分以内にアクセスしたすべてのファイルが表示されます。

10秒間、それはより困難です:

while read time;do
    read name
    [ $time -lt 10 ] && echo $name
  done < <(find ${PATH//:/ } /home/*/bin -type f -amin -1 -print0 |
    xargs -0 --no-run-if-empty stat -c $(date +%s)$'-%X ;"%nn"' |
    bc)

Linux
  1. Linux –シリアルポートを使用してプロセスを見つける方法は?

  2. Linuxで実行中のプロセスを強制終了する方法

  3. Linuxで過去30日間に変更されたファイルを見つける方法は?

  1. LinuxでFINDを使用する方法

  2. Linux の孤立したプロセスを見つける

  3. Linuxで最終日に更新されたディレクトリを見つける方法は?

  1. Linuxでファイルを見つける方法

  2. Linuxで画像メタデータを表示する方法

  3. LinuxでデフォルトゲートウェイIPを見つける方法