2017-01-09 1 views
0

단순히에코 [고도 이벤트는

echo "This is a **test** see ![alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png)" 

를 실행 찾을 수없는 원인 당신이 얻을 :

bash: ![alt: event not found 

이유는 무엇입니까? 그것은 This is a **test** see ![alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png)

+0

당신의 예제에서와 같이 큰 따옴표를 사용하지만'! '변수의 특별한 처리를 제거함으로써 역사 확장을 막을 수 있습니다. '! '앞에''\''를 추가하십시오. – Inian

답변

2

사용 따옴표

echo 'This is a **test** see ![alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png)' 

작은 따옴표는 당신이뿐만 그대로 통과 시험을

를 기대합니다. 큰 따옴표로 묶인 문자열은 bash에 의해 해석되지만, 예를 들어 $VAR은 변수를 나타냅니다. $(..)은 명령을 실행하고 stdout을 삽입하며 [...]은 부울 계산자로 취급되고 !은 NOT으로 처리됩니다. bash는 설명서에서 :

묶는 문자를 따옴표로 자신의 특별한 의미 withindouble 따옴표를 유지 $를 제외하고, , \, and, when history expansion is enabled, !. The characters $ and으로, 따옴표 내의 모든 문자의 리터럴 값을 유지합니다. 백 슬래시는 $,`, ", \, 또는. 자 중 하나가 오는 경우에만 특별한 의미를 지닙니다. 큰 따 H 표 안에 큰 따 H 표를 붙이려면 앞에 백 슬래시를 붙이십시오. 하지 않는 한! 따옴표로 나타나는 것은. 대신! 앞에 백 슬래시가 제거되지 않습니다. 백 슬래시를 사용하여

+0

에코의 작은 따옴표와 큰 따옴표의 차이점은 무엇입니까? – somenxavier

+0

답변을 확대하여 질문에 답글을 달았습니다. – Teudimundo

0

!는 NOT (논리 NOT) 연산자로 해석됩니다 탈출하고, 따라서 [alt명령로 처리됩니다 작은 따옴표를 사용하는 것이 가장 좋은 옵션 일 수 있습니다.

echo 'This is a **test** see ![alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png)'