는, (쉘에 의해 수 처리 후) 라인의 나머지 stdout
출력을 얻는다 (또는 아마도 다음 프로세스에 파이프). 이렇게하면 cal
이 명령으로 처리되지 않습니다.
'nix'에서 사용되는 다른 종류의 따옴표는 "
큰 따옴표와 '
작은 따옴표입니다. `backtick '도있다. 각각은 매우 특별한 용도로 사용됩니다.
백틱으로 둘러싸인 명령은 확장 된 인라인입니다. 즉, 실행되고 출력이 줄에 입력됩니다. 사용자 이름 (whoami
명령에 대한 응답)가 john
경우에 따라서,
echo hello `whoami`
는 hello john
가 발생합니다.
작은 따옴표는 반대의 효과가 있습니다. 즉, 쉘에서 텍스트를 "보호"하므로 더 이상 처리하지 않습니다. 따라서
echo hello '`whoami`'
은 큰 따옴표 "
조금 덜 제한적인
hello '`whoami`'
가 발생합니다. $
(변수), \
(이스케이프) 및 '백틱'은 여전히 해석되지만, 스크립트에 공백이있는 인수를 전달하는 좋은 방법입니다. for
및 me
: 따라서
doSomething for me
두 함수 doSomething
매개 변수를 전달한다. 반면
doSomething "for me"
단 하나의 매개 변수를 전달, for me
에 나는이 당신을 위해 일을 명확히 바랍니다.
단지'cal $ month $ year'만으로도 충분합니다.'echo'는'''변수를 감싸지 않아도됩니다. – fedorqui
' '는 쉘이 변수 ('$')를 확장하는 것을 막습니다. 그것들을 밖으로 꺼내. 또한 - 당신은'cal'을 실행하고'echo'하지 않습니다. 그래서 'cal $ month $ year'만으로도 충분합니다. – Floris
용어 설명 quibble :'cal'은 명령이 아니라 함수입니다. –