mail 명령 쉘 스크립트를 사용하여 이메일을 보내기 위해 특정 날짜(예: 금요일)를 어떻게 설정합니까?
쉘 스크립트를 사용하여 일주일에 한 번만(예: 금요일) 메일을 보내는 논리가 필요합니다.
mailx -s "Subject $DATE " -r "resource" -a $LOG [email protected] < status
이 이메일은 매일 발송되나요?
답변1
작업을 반복적으로 수행하려면 크론 작업을 설정해야 합니다. 이를 위해 먼저 수행하려는 작업에 대한 스크립트를 만듭니다.
다음 내용이 포함된 파일(예: mail.sh)을 만듭니다.
#!/bin/bash
mailx -s "제목 $DATE" -r "리소스" -a $LOG[이메일 보호됨]<상태
문서를 저장합니다. 터미널에 다음 명령을 입력하여 스크립트 실행 권한을 할당합니다.
$ chmod +x mail.sh
스크립트를 실행 ./mail.sh
하여 작동하는지 확인하세요.
이제 스크립트는 매주 금요일에 자동으로 실행되지 않습니다. 이 설치를 위해 crontab
.
$ sudo apt 설치 crontab
이제 터미널에 다음을 입력하세요.
$crontab-e
선호하는 편집기를 선택하고 이 줄을 끝에 추가하세요. (먼저 아래 링크를 참고하세요)
0 0 * * 5 mylocation/mail.sh
위 코드는 매주 금요일 오전 12시에 정시에 mail.sh를 실행합니다(5는 의미).
보다협회크론탭에 대해 알아보세요. Google crontab을 사용할 수도 있습니다. crontab을 사용하고 행을 추가하는 방법을 배우는 것이 좋습니다.