폴더를 확인하고 세 줄을 출력하는 스크립트가 있습니다.
1st line : Changes to the subfolders 2nd line : Changes to the number of files 3rd line : Changes of file size in the folder
다음은 출력의 예입니다.
1 sub-folders added Number of files didn't change Files size didn't change
명령을 사용하여 한 줄씩 출력을 확인하고 스크립트를 테스트하고 싶습니다.
그것은 마치
line 1 == "1 sub-folders added" && line 2 == "Number of files didn't change" && line 3 == "Files size didn't change" then print success if it matches.
어떤 명령이 이를 수행할 수 있나요?
감사해요
답변1
head
및를 사용하여 tail
해당 행과 값을 가져올 수 있습니다.
예:
OUTPUT=`yourcommand` ; if [ "`echo \"$OUTPUT\" | head -n 1`" = "1 sub-folders added" ] && [ "`echo \"$OUTPUT\" | head -n 2 | tail -n 1`" = "Number of files didn't change" ] && [ "`echo \"$OUTPUT\" | tail -n 1`" = "Files size didn't change" ] ;then echo "success" ; else echo "error" ; fi
(키워드는 확실하지 않습니다 didn't
. 백슬래시를 사용하여 아포스트로피를 이스케이프해야 할 수도 있습니다(예 \'
: )).
이 모든 내용을 한 문장으로 압축하고 싶은 것 같으니 이렇습니다.
첫 번째 줄에는 숫자 "1" 앞에 공백이 있습니다. 출력이나 이 스크립트를 수정할 수 있습니다.