'echo'와 'echo-e'의 차이점 [닫힘]


25

차이점은 무엇이며 echo그리고 echo -e? echo 명령에 어떤 따옴표 ( ""또는 '')를 사용해야합니까? 즉 : echo "Print statement"또는 echo 'Print statement'? 또한 사용할 수있는 옵션은 무엇 echo입니까?


3
어떤 껍질? echo -ePOSIX에 의해 정의되지 않으며 아마도 쉘에 따라 다릅니다.
jordanm

이것이 귀하의 질문에 대답합니까? unix.stackexchange.com/questions/65803/…
dhag

2
man echo대한 설명서를 읽는 데 사용하십시오 echo.
nanny

echo는 인수를 명령으로 실행하지 않습니다. 단지 ... echo
Anthon

답변:


33

echo자체적으로 한 줄의 텍스트를 표시합니다. "..."문자 그대로 다음 두 인용 부호 안에있는 것을 취하여 그대로 인쇄합니다. 그러나와 echo -e당신이 만들고있어 echo백 슬래시 이스케이프를 해석 할 수 있도록. 이것을 염두에두고 여기에 몇 가지 예가 있습니다.

INPUT: echo "abc\n def \nghi" 
OUTPUT:abc\n def \nghi

INPUT: echo -e "abc\n def \nghi"
OUTPUT:abc
 def 
ghi

참고 : \n줄 바꿈, 즉 캐리지 리턴입니다. 터미널 에 echo -e입력하여 다른 시퀀스가 ​​인식되는 것을 알고 싶다면 man echo.


2
echo대부분의 쉘에 내장되어 있습니다. 대신 독립형 명령을 man echo문서화하는 echo것이 좋습니다.
Stéphane Chazelas

유닉스 적합성 모드에 있지 않을 때 GNU echo또는 GNU 쉘의 동작을 설명하고 있습니다 echo. 다른 곳에서는 일반적으로 동작이 다릅니다.
Stéphane Chazelas

3

대부분의 SHELL echo이스케이프 시퀀스 ( \n \t)를 사용할 수 없습니다. echo -e할 수있는 곳

echo -e " This is \n an \t example"

작은 따옴표와 큰 따옴표는 대부분 보간 문제를 처리하는 데 사용됩니다. 여기에서 자세한 내용을 찾을 수 있습니다, 왜 에코 내 따옴표 문자를 무시?


그것은 다른 길입니다. 대부분의 쉘 (ksh88, ksh93, pdksh, mksh, Bourne, zsh, dash, bash 및 모든 Unix 호환 시스템의 sh, 일부는 ksh93 또는 bash와 같은 일부 환경 echo에서는 이스케이프 시퀀스가 ​​확장 됨 )을 확장합니다. echo수락 하는 구현 -e은 POSIX를 준수하지 않습니다.
Stéphane Chazelas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.