すべてのユーザーのすべての cron ジョブを一覧表示するにはどうすればいいですか? 質問する

すべてのユーザーのすべての cron ジョブを一覧表示するにはどうすればいいですか? 質問する

*NIX システムのスケジュールされた cron ジョブをすべて一度に表示できるコマンドまたは既存のスクリプトはありますか? 、および に/etc/crontabあるものすべてに加えて、すべてのユーザー crontab を含めたいと思います。で/etc/cron.dによって実行される特定のコマンドも表示できれば便利です。run-parts/etc/crontab

理想的には、出力をわかりやすい列形式で、意味のある順序で表示したいです。

その後、複数のサーバーからのこれらのリストを結合して、全体的な「イベントのスケジュール」を表示できます。

私自身もそのようなスクリプトを書こうとしていたのですが、もし誰かがすでに苦労して書いているのであれば...

ベストアンサー1

これを root として実行する必要がありますが、次のようになります。

for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done

各ユーザー名をループして、crontab を一覧表示します。crontab はそれぞれのユーザーが所有しているため、そのユーザーまたは root でなければ、他のユーザーの crontab を表示することはできません。


crontabがどのユーザーに属しているかを知りたい場合は、echo $user

for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done

おすすめ記事