#!/usr/sbin/dtrace -qs /* countprogs.d -- Count programs invoked by a specified user */ proc::do_execveat_common:exec /uid == $1/ { @num[execname] = count(); }
述語/uid == $1/
は、コマンドラインで指定された引数に対して実行される各プログラムの有効なUIDを比較しています。 ID -u user
コマンドを使用して、ゲスト・ユーザー・アカウントのIDを確認できます。次に例を示します:
# chmod +x countprogs.d
# ./countprogs.d $(id -u guest)
^C
less 1
lesspipe.sh 1
sh 1
bash 9
root
ユーザーに対して同じコマンド(通常はユーザー0
)を使用できます。 テストのために、別のウィンドウを使用してユーザー・アカウントをテスト・ログインの下に配置し、いくつかの異なるプログラムを実行できます。