쉘 스크립트에서 문자열이 매칭되었을 때 분기하기
쉘 스크립트에서 if문에서 찾고자 하는 문자가 포함되어 있는지를 확인하기 위한 두가지 방법에 대해 이야기 해보려 합니다. 먼저 스크립트를 보시죠 #!/bin/sh VAR_STR1="This is test string" VAR_STR2="test" if [[ "${VAR_STR1}" == *"test"* ]];then echo "1st find it" fi if [[ "${VAR_STR1}" =~ "test" ]];then echo "2nd find it" fi첫번째는 아스테리스크(*)를 사용하여 "test" 라는 문자열에 포함된 것을 찾아 분기한 것이고 두번째는 쉘 스크립트의 if문의 기능을 이용한 것입니다. 참고로 "=~"는 bash 버전3 이상일 때 지원합니다. 개인적으로는 두번째 패턴을 좋아합니다만..
2020. 6. 5. 11:14