// CD를 사용할 수 있지만 ///, ////, ///// 또는...을 사용할 수 없는 이유는 무엇입니까? [복제]

// CD를 사용할 수 있지만 ///, ////, ///// 또는...을 사용할 수 없는 이유는 무엇입니까? [복제]

디렉토리를 로 변경하면 //와 매우 유사하지만 약간 다른 특수 디렉토리에 배치되는 것 같습니다 /. 그러나 슬래시( )를 더 추가하려고 하면 ///막히게 됩니다 /.

$ cd /    ;pwd
/
$ cd //   ;pwd
//
$ cd ///  ;pwd
/
$ cd //// ;pwd
/

이는 약간 특별한 것처럼 보입니다 //. 동일한 디렉토리와 모든 항목이 있더라도 에서 반환하는 문자열은 여전히 ​​다릅니다 pwd. 왜 이런거야? 내 작업 디렉토리는 왜 될 수 있는데 //그렇지 않습니까 ///?

답변1

//가 적용되는 특별한 경우입니다."경로 이름"이라는 용어의 POSIX 정의:

여러 연속 문자는 정확히 두 개의 선행 문자가 있는 경우를 제외하고 <slash>1과 동일하게 처리됩니다 .<slash><slash>

대부분의 시스템 //과 동일 /하지만 POSIX에 따라 다르게 허용됩니다.

추가 자료:

(첫 번째 링크가 가장 좋은 것 같습니다.)

관련 정보