해당 줄에서 입력을 찾으려면 쉼표로 구분 된 문자열이 있습니다.
echo US | grep "US,CA,CH,JP"
출력이 비어 있습니다! grep을 사용하여 해당 문자열에서 입력을 찾으려면 어떻게해야합니까?
답변
명령의 인수를 교체하십시오.
echo "US,CA,CH,JP" | grep US
에:
echo US | grep "US,CA,CH,JP"
US,CA,CH,JP
입력 문자열에서 문자열 (패턴) 을 찾고 US
있는데 이는 예상과 일치하지 않습니다.
답변
쉼표가 “또는”명령문처럼 작동 할 것으로 예상하지 않는 경우 쉼표를 파이프로 변경하고 확장 정규식 -E
옵션을 사용해야합니다 .
echo US | grep -E "US|CA|CH|JP"
또는 쉼표를 개행 문자로 변경하십시오.
echo US | grep "US
CA
CH
JP"
답변
나는 사용할 것이다 $echo US | grep -i "US|CA|JP|CH"
에코 대신 “미국”에서 패턴을 찾는 대신 실제로 패턴을 찾을 수있는 목록이나 무언가를 제공하십시오.