2017-09-11 6 views
0

ping을 설정하고 로그 파일을 date-time_successpingdate-time_failping 인 2 개의 파일로 유지하는 일련의 Linux 명령을 생성했습니다. 나는 date-time_failping이 존재할 때, 리눅스 시스템이 PIC에게 이메일을 보낼 액션을하고 싶다. 하지만 파일 이름은 너무 무작위입니다. 예 : 20170911-160455_failping. -c/-f과 같은 것을 사용했지만 특정 이름이없는 경우 검색 할 수 없습니다. 생성 된 날짜의 변형과 함께 파일의 배수가있을 것입니다. 그래서 이것에 대해 조언이 필요합니다. 누구든지 도울 수 있기를 바랍니다.check date_filename.txt가 있습니다.

감사

P/S : 주어진 정보는 내가 제공 나이 문제를 해결하는 데 도움을 시도 할 수 있도록 더 많은 정보를 필요한 경우 회신 해 주시기 바랍니다, 충분하지 않은 경우 정말 미안 해요.

감사

당신은 그것을이 선택적으로 뭔가를 할 수
+0

방금 ​​알아 챘습니다. 내 파일 이름은 실제로 date-time_failping.txt ..... 미안. – WMK

답변

0

,

이 명령은 어제 날짜 얻을 수 있습니다 :

VAR1=`date +%Y%m%d -d "yesterday"` 

또는 당신은 오늘 날짜로 작업 할

VAR1=`date +%Y%m%d ` 
$file = VAR1`__failping` 
if [ -f "$file" ] 
then 
    echo "My message" | mail -s subject [email protected] 
else 
    //Do something else 
end 
0

inotify을 사용하여 로그 파일 생성 이벤트를 모니터링 한 다음 파일 패턴이 xxxxx_failping 인 경우 로그 파일은 ping_logs에 배치됩니다 가정 그냥 파일 이름을 인쇄 여기

$ inotifywait -rme create ping_logs/ |awk '{if($NF ~ /[0-9]+-[0-9]+_failping/) print $NF}' 

을 모니터하기 위해 다음과 같은 스크립트를 사용할 수 있습니다, 당신은 당신의 메일 링 행동을 변경할 수 있습니다.