반응형
출처 : https://stackoverflow.com/questions/229551/how-to-check-if-a-string-contains-a-substring-in-bash
Bash에서 문자열이 부분 문자열을 포함하는지 확인하는 방법
저는 Bash에서 하나의 문자열을 가지고 있습니다.
string="My string"
저는 이 문자열이 다른 문자열을 포함하는지 어떻게 테스트할 수 있을까요?
if [ $string ?? 'foo' ]; then
echo "It's there!"
fi
어디에 제가 모르는 연산자 ??
가 있나요? 저는 어떻게 echo와 grep
을 사용할 수 있을까요?
if echo "$string" | grep 'foo'; then
echo "It's there!"
fi
저는 이 부분에 약간 서투른 것 같습니다.
26개의 답변 중 1개의 답변만 추려냄
당신은 만약 이중 괄호를 사용한다면 case 구문 바깥에서 Marcus의 답변(* 와일드 카드) 를 사용할 수도 있습니다.
string='My long string'
if [[ $string == *"My long"* ]]; then
echo "It's there!"
fi
needle string의 공백은 큰 따옴표로 묶어야 하며 *
와일드 카드는 큰 따옴표 바깥에 있어야 합니다.
반응형
'리눅스 shell' 카테고리의 다른 글
tr을 사용하여 줄바꿈을 공백으로 바꾸기 (0) | 2020.07.09 |
---|---|
비밀번호가 없는 SSH 로그인이 잘 안됩니다 (0) | 2020.04.18 |
script에서 ssh로 timeout을 주는 방법? (0) | 2020.02.06 |
cronjob 문법에서 backtick(`)을 사용하려는데 무엇이 잘못되었습니까? (0) | 2019.12.19 |
Shell Script 튜토리얼 - 팁 Getopts (0) | 2019.12.16 |