답변:
<<<
"여기서 문자열" 이 시작됩니다. 문자열이 확장되어 프로그램의 표준 입력으로 공급됩니다. (귀하의 경우 확장이 많지 않습니다.) 다음과 같습니다.
echo ddd | md5sum
한편, <<
here 문서를 시작합니다. 마커 ddd
를 포함 하는 다음 라인 은 모두 프로그램의 입력을 구성합니다. (데이터에 나타나지 않는 마커를 사용해야합니다.) 위와 같이 동일한 효과를 얻을 수 있습니다.
md5sum <<END
ddd
END
사이 한 차이가 <<END
하고 <<'END'
평소와 같이 확장됩니다 따옴표없이, 어떤 변수, 여기에 문서 등 이스케이프 시퀀스는 :.
<<<
here 문자열을 소개 합니다 . 이후 문자열 <<<
은 명령에 대한 입력으로 전달됩니다. 이것은 Byron Rakitzis의 rc
(Plan 9 쉘) 포트 에서 Unix로 시작되었으며 zsh, ksh93 및 bash에도 있습니다.
<<
소개 여기에 문서를 : 쉘 스크립트의 후속 행은 명령에 입력으로 전달하고, 문자열이 후 <<
터미네이터이다. 이 문서는 모든 Bourne 스타일 쉘 (Bourne, POSIX, ash, bash, ksh, zsh 등), C 스타일 쉘 (csh, tcsh) 및 Plan 9 쉘 (rc, es)에서 작동합니다.
<<<
이 아니며 ksh
경로는 rc
-> zsh
-> ksh93
->입니다 bash
( ksh
릴리스 노트는에서 기능을 한 번 빌리면 승인합니다 zsh
). 스타일 쉘 <<
에서도 작동rc
rc
및 zsh
<<<
하지만 그에 rc
후행 개행 문자를 포함하지 않는 's와 임시 파일을 사용하지 않습니다 (파이프 적어도 리눅스 포트에서 공급 별도의 프로세스를 사용).
<<<
유닉스 포트 rc
에서 나온 rc
것입니다.
rc
,<<<
(같은<<
) 그래서 명령에 의해 사용할 수있는 임시 파일을 사용하여lseek
자신의 표준 입력을.