sudo는 모든 UNIX 계열 시스템에서 백슬래시 뒤의 문자를 처리합니까? - 긴 줄을 끊는 데 사용됩니다.

sudo는 모든 UNIX 계열 시스템에서 백슬래시 뒤의 문자를 처리합니까? - 긴 줄을 끊는 데 사용됩니다.

일반적으로 긴 명령/줄 끝에 "\"를 넣어 여러 줄로 나눌 수 있습니다.

sudoers 구문에서는 이것도 허용합니다. 괜찮습니다.

하지만:

"\" 문자 뒤에 "공백"이 있으면 명령/스크립트가 중단됩니다.하지만 sudo는 그렇지 않습니다..

질문: sudo가 모든 UNIX 계열 시스템에서 "\" 뒤에 공백을 허용한다는 것이 공식적으로(그리고 어디에 문서화되어 있습니까) 있습니까?

명령 예:

일반 백슬래시:

$ echo a; \
> echo b
a
b

백슬래시 뒤에 공백이 추가됩니다.

$ echo a; \ 
a
bash:  : command not found
$ 

답변1

\동작은 다양한 애플리케이션에서 처리되므로 컨텍스트에 따라 달라집니다 .

sudoers 파일은 .so sudo에서 가져온 것이므로 sudo구현에 따라 다릅니다 sudo.가능한시스템에 따라 다릅니다. 예를 들어 OSX에서는 다음과 같습니다 man sudoers.

긴 줄은 마지막 줄에 백슬래시('\')를 사용하여 계속될 수 있습니다. 특징온라인.

설명하는 다른 동작은 다음 bash에서 처리되고 기록 됩니다 man bash.

\<newline>쌍이 발생하고 백슬래시 자체가 따옴표로 묶이지 않으면 줄 \<newline> 연속으로 처리됩니다(즉, 입력 스트림에서 제거되어 사실상 무시됩니다).

다른 쉘은 다른 구현을 가질 수 있습니다.

관련 정보