내가 받는 오류는 30행입니다. 경고: 여기서 문서는 10행에 있으며 파일 끝("wanted simple.sh")으로 구분됩니다. 이 오류는 무엇을 의미합니까? 이것이 10번째 줄의 모습입니다.
cat <<simple.sh | grep '^[^abc]$.*!$' >>Result
simple.sh의 출력을 Result 파일에 추가하려고 합니다.
답변1
문법
somecommand <<TAG
여기에서 문서를 시작하세요. 여기서 문서는 텍스트 블록의 입력 리디렉션입니다. 한 줄에서 단독 으로 만나면 TAG
문서의 내용은 여기서 끝납니다. 예를 들어:
cat <<END_TEXT
this is
some text
END_TEXT
태그는 임의의 단어일 수 있으며 귀하의 경우에는 simple.sh
이며 쉘은 여기에서 문서를 끝내는 단어를 찾을 수 없다고 불평합니다.
내 생각엔 당신이 말하는 것 같아요
cat simple.sh | grep ... >>Result
또는
cat <simple.sh | grep ... >>Result
그렇지 않으면
grep ... simple.sh >>Result
또한 정규 표현식 ^[^abc]$.*!$
은안 돼요다음과 같은 한 줄이 없기 때문에 일치합니다.!
뒤쪽에줄 끝.