私はデーモンに変換され、バックグラウンドで実行される単純なスクリプトを書いています。スクリプトは非常に簡単に動作します。ls
コマンドプロセスなどのプロセスタイプを監視する必要があります。保存のためにファイルに書き込みます。
私の方法は、while trueループを使用し、psコマンドを使用してプロセスタイプを継続的にチェックすることです。これを検出すると、ファイルに追加します。
こんな文章を書くのが悪い方法なのかと思います。
私のコードは次のとおりです
while true
do
if [[ $(ps -aux | grep -w "ls") ]]
then
#append to file
fi
done &
答え1
あなたはできます
grep commandname /proc/*/comm
私のLinuxシステムでは、ps | grep
またはpgrep
。
答え2
あなたは提案、
私の方法は、while trueループを使用し、psコマンドを使用してプロセスタイプを継続的にチェックすることです。これを検出すると、ファイルに追加します。
これを行うには、プロセス名を検索して一致するものを追加します。 (一致する項目がないと出力されません。)
while sleep 5
do
ps -ef | grep -w '[l]s' >> matched.txt
done
実際に達成しようとしているものが何であるかを知らずに、アプローチを批判することは困難です。プロセスが終了したときにプロセスを再開するには、デバイスの使用を検討してくださいsystemd
。特定のプロセスの存在を記録するには、lastcomm
別の監査ツールを使用して、指定されたプロセスの開始時刻と終了時刻を取得することをお勧めします。どちらの場合も、使用中のループを廃止し、短期プロセスの実行を失うことはありません。