저는 유닉스를 처음 접했습니다.
일부 메일함은 엄청난 양의 공간을 차지하고 있어서 메일함에 30일 동안 보관된 모든 메일을 삭제하는 방법을 찾으려고 노력 중입니다. 내가 찾은 것의 대부분은 단 하나의 사서함과 관련되었습니다.
나는 아직 이것에 대해 많은 일을 하지 않았습니다. 어떤 도움이라도 대단히 감사하겠습니다.
답변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일이 지난 메시지를 정리해야 하는 경우에는 완전히 다른 접근 방식이 필요합니다. 이것이 의도된 것이라면 원본 게시물을 업데이트하세요.