여기서 문자열의 끝은 무엇입니까?

여기서 문자열의 끝은 무엇입니까?

여기 문자열의 끝은 개행 문자인 것 같습니다. 나는 내가 틀렸다는 것을 깨달았습니다.

$ 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

관련 정보