나는 다음과 같은 코드가있는 경우 :출력을 정규식과 비교할 때 어떻게 bash에서 줄 바꿈을 유지할 수 있습니까?
if [[ "$(cat myfile)" =~ ^scripts\/.* ]]; then
echo YES
else
echo NO
fi
그리고 "myfile을"는 포함되어 다음
hot/warm
scripts/whatever
cold/cool
결과를 내 코드가 "NO"입니다 실행,하지만 난 그게 YES로 할 때 .
나는 내용을 다시 주문하여 "myfile을"변경하는 경우
있도록 아래와 같이, 먼저 "어떤 스크립트 /"scripts/whatever
hot/warm
cold/cool
그럼 난 내 스크립트가 YES 참으로 실행 결과. 이 문제는 정규식 패턴이 첫 번째뿐만 아니라 내용의 모든 행에 있는지 여부를 스크립트가 감지하도록하기 때문에 문제가됩니다.
'grep -q'^ scripts /.*$ 'myfile'을 사용하지 않는 이유는 무엇입니까? – chepner