서버의 /usr/logs 디렉터리에는 "xxxx_xxx_2016-11-08_0.log"라는 파일이 매일 있습니다. 파일 이름의 날짜는 매일 바뀌지만 형식은 매일 동일합니다. , 파일 내용은 4시간마다 한 번씩 작성됩니다. 오전 12시, 오전 4시, 오전 8시, 정오 12시, 오후 4시, 오후 8시에 파일 내용을 씁니다. 모니터링 작업은 오전 3시 30분, 오전 7시 30분, 오전 11시 30분, 오후 3시 30분, 오후 7시 30분경에 콘텐츠에 들어가 파일을 확인하고 "maxretry, out of sync" 오류가 있는지 확인해야 합니다. 이 줄이 발견되면 경고를 보내고 이메일 메일을 작성하세요. 또한 'FCS Bad Receipt'와 같은 오류가 표시되면 위와 동일한 작업을 수행하세요. 저는 스크립팅과 Unix를 처음 접했습니다. 위의 요구 사항에 대해 도와주세요.
답변1
이는 단지 샘플 스크립트이므로 필요에 따라 수정할 수 있습니다.
FILE="xxxx_xxx_`date +"%Y-%m-%d"`_0.log"
grep -E "maxretry|not synchronized|FCS Bad receipt" $FILE > fcs_error.log
if [[ $(wc -l fcs_error.log | awk '{print $1}') -gt 0 ]]; then
mail -s "error found" mail_id <fcs_error.log
fi
확인하다예약 된 일들일 처리 방법에 대해
-n
줄 번호를 인쇄하려면 grep 옵션을 사용하십시오 . 바라보다grep자세한 내용은.