grep 명령을 실행하고 그 결과를 출력하는 스크립트를 실행하고 싶습니다. grep이 한 줄을 반환 할 것으로 기대하지만 일치하는 줄이없는 경우를 처리하려고합니다 (예 : grepped 파일이없는 경우).grep이 적어도 하나의 줄을 반환하는 방법
line = grep ...
if line is empty
print "\n"
else
print line
grep 명령을 실행하고 그 결과를 출력하는 스크립트를 실행하고 싶습니다. grep이 한 줄을 반환 할 것으로 기대하지만 일치하는 줄이없는 경우를 처리하려고합니다 (예 : grepped 파일이없는 경우).grep이 적어도 하나의 줄을 반환하는 방법
line = grep ...
if line is empty
print "\n"
else
print line
grep의 리턴 코드를 조사하기 만하면됩니다.
grep
은 행이 일치하면 0을, 일치하는 행이없는 경우 1을 반환합니다. 오류가 발생하면 1보다 큰 값을 반환합니다. 특정 상황에서
$ echo "hi" | grep hi
hi
$ echo $?
0
$ echo "hi" | grep hello
$ echo $?
1
(예 : 당신이 bash는 스크립트에서 set -e
을 때와 같이), 당신은 grep
에게 제공되는 표현이 일치하지 않을 때의 경우 상태 1로 종료 grep
싶지 않아요.
grep "EXPR" FILE.txt || echo "No match found"
가능한 결과 :
따라서 는 grep
가 호출되고있는 단말 또는 스크립트 사용 다시 제공되는 1 (또는 그 이상)의 이탈 상태를 방지