반응형
명령 출력에 쉘 스크립트의 특정 문자열이 포함되어 있는지 확인
셸 스크립트를 작성 중이며 명령 출력에 특정 문자열이 포함되어 있는지 확인하려고합니다. 아마도 grep을 사용해야한다고 생각하지만 어떻게해야할지 모르겠습니다. 아는 사람 있나요?
grep의 반환 값을 테스트합니다.
./somecommand | grep 'string' &> /dev/null
if [ $? == 0 ]; then
echo "matched"
fi
관용적으로 다음과 같이 수행됩니다.
if ./somecommand | grep -q 'string'; then
echo "matched"
fi
그리고 또한:
./somecommand | grep -q 'string' && echo 'matched'
테스트 $?
는 안티 패턴입니다.
if ./somecommand | grep -q 'string'; then
echo "matched"
fi
또 다른 옵션은 명령 출력에서 정규식 일치를 확인하는 것입니다.
예를 들면 :
[[ "$(./somecommand)" =~ "sub string" ]] && echo "Output includes 'sub string'"
반응형
'program story' 카테고리의 다른 글
Git의 파일에 대한 변경 사항을 선택적으로 되돌 리거나 체크 아웃 하시겠습니까? (0) | 2020.09.18 |
---|---|
Android에서 홈 버튼 누름 감지 (0) | 2020.09.18 |
미국 달러 금액을 나타내는 데 사용하는 가장 좋은 장고 모델 필드는 무엇입니까? (0) | 2020.09.18 |
Json.NET 변환기를 사용하여 속성 역 직렬화 (0) | 2020.09.18 |
C #의 배열 크기 (길이) (0) | 2020.09.18 |