2016-06-18 3 views
-2

bash 스크립팅에 도움이 필요합니다. 로그 파일이있는 폴더가 있습니다. (숫자는 다를 수 있음) 해당 파일을 테스트해야하는데 하나 이상의 파일에 내용이 있으면 해당 파일을 보내려고합니다. 내용은 다음과 같은 형식으로되어 있습니다 (mailx를 사용함) :파일 내용 테스트

"filename"의 내용은 다음과 같습니다. ------ content --------- "filename2"의 내용은 다음과 같습니다. : ------ content --------- "filename3"에 내용이 없습니다.

실용적인 방법으로 bash를 사용하면 어떻게됩니까?

도움 주셔서 감사합니다.

+0

가 [편집 - 도움말]에서 봐 주시기 바랍니다 (http://stackoverflow.com/editing-help). – Cyrus

+0

이 질문은 두 가지 다른 질문이 있습니다. bash에서 이메일 보내기 ([here] (http://stackoverflow.com/questions/5155923/sending-a-mail-from-a-linux-shell-script) 참조) 파일이 비어 있는지 테스트하십시오 ([here] (http://stackoverflow.com/questions/9964823/how-to-check-if-a-file-is-empty-in-bash-shell) 참조). 나는 두 개의 다른 질문을 하나의 질문으로 결합하는 것이 유효한 질문인지는 모르겠지만, 그 때라도 그 질문의 제목을 반영하여이를 반영해야합니다. – user000001

+0

미안하지만, 나는 말해야했다. 우편으로 보내기 나는 어떻게하는지 안다. 내 문제는 파일에 콘텐츠가 있는지 테스트 한 후이 콘텐츠를 전송할 수 있도록 형식을 지정하는 것입니다. –

답변

1
shopt -s nullglob 
for i in *; do 
    if [[ -s "$i" ]]; then 
    echo "file $i exists and is not empty" 
    fi 
done 

참조 : man bash