
여기 문자열의 끝은 개행 문자인 것 같습니다. 나는 내가 틀렸다는 것을 깨달았습니다.
$ cat <<< hello world
cat: world: No such file or directory
여기서 문자열의 끝을 무엇으로 나타낼 수 있습니까?
답변1
<<< word
어디ㅏ단어셸에서 하나의 단위로 처리되는 일련의 문자입니다., 공백으로 구분됩니다. 이는 단일 일반 단어( hello
), 작은따옴표 또는 큰따옴표로 묶인 문자열( 'hello world'
, "hello world"
), 매개변수 또는 명령 대체( $foo
, $(...)
), 백슬래시 이스케이프를 사용하여 조합된 항목 또는 이들의 조합일 수 있습니다.
한 줄에 여러 개의 here 문서나 here 문자열이 있을 수 있으므로 줄 끝을 다음과 같이 사용할 수 없습니다.오직구분 기호가 없으면 거기서 끝납니다(개행 문자가 백슬래시로 이스케이프되지 않는 한).
원하는 효과를 얻을 수 있을 거예요
cat <<<'hello world'
또는
cat <<<hello\ world
답변2
매뉴얼에서:
[n]<<<단어
결말은 여러 단어가 아닌 한 단어입니다. 따라서 이 예에서 첫 번째 단어는 hello
여기서 문자열을 종료하는 것입니다. 다음 단어는 world
그것이 단지 일반적인 매개변수 cat
이고 cat
읽을 파일 이름이라고 가정한다는 것입니다.
다음과 같이 더 명확하게 작성할 수 있습니다.
$ cat world <<< hello