すべてのメールボックスを消去するためにcronを構築する方法は?

すべてのメールボックスを消去するためにcronを構築する方法は?

私はUnixに初めて触れました。

一部のメールボックスは大量のスペースを占めており、メールボックスに30日間保存されているすべてのメールを削除する方法を見つけようとしています。私が見つけたもののほとんどは、ただ1つのメールボックスに関連していました。

私はまだこれについて多くのことをしていません。どんな助けでも大変感謝します。

ベストアンサー1

可能なユーザーと他の保護されたユーザーを除くすべてのメールボックスの内容を消去するには、root次のように使用できます。

for mbox in $(ls /var/spool/mail/*|grep -v -e root -e protecteduser);do >${mbox};done

毎月1日に実行するようにcronでスケジュールします。

crontab -e 

crontabの末尾に次の行を挿入します。

0 2 1 * * /path/to/mailbox/cleaner/script 

これにより、スクリプトは毎月1日午前2時に実行されます。

一方、各メールボックスで30日以上経過したメッセージをクリーンアップする必要がある場合は、まったく異なるアプローチが必要です。これが意図されている場合は、元の投稿を更新してください。

おすすめ記事