2012-10-25 3 views
-3

길이에 상관없이 문자열에 'CI'가 포함되어 있는지 검색하고 싶습니다. 글자는 어디에서나 나타날 수 있으며 길이는 가변적 일 수 있습니다. 또한 이것을 쉘 스크립트의 조건부 스위치로 사용하고 싶습니다. 따라서 문자열에이 문자열이 들어 있는지 여부를 확인하기 위해 IF 내부에서 사용할 수있는 모든 명령. 이 기능을 사용하는 방법에 대한 통찰력을 제공하므로 도움이됩니다.Regex의 비교

답변

0

당신은 내가 생각

echo $FOO | grep CI 

를 사용할 수 있습니다.

1
정규식

하지하지만 (휴대 성) POSIX 쉬

case "$FOO" in 
*CI*) 
    # do something 
    ;; 
esac 

정규식 쉬와 함께 작동

if expr "$FOO" : '.*CI' >/dev/null; then 
    # do something 
fi 

if echo "$FOO" | grep 'CI' >/dev/null; then 
    # do something 
fi 

많은 쉘 (bash는 KSH)

if [[ $FOO = *CI* ]]; then 
    # do something 
fi 

정규식 bash는 특정에게로 정규식하지

if [[ $FOO =~ CI ]]; then 
    # do something 
fi