![// CD를 사용할 수 있지만 ///, ////, ///// 또는...을 사용할 수 없는 이유는 무엇입니까? [복제]](https://linux55.com/image/87823/%2F%2F%20CD%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EC%88%98%20%EC%9E%88%EC%A7%80%EB%A7%8C%20%2F%2F%2F%2C%20%2F%2F%2F%2F%2C%20%2F%2F%2F%2F%2F%20%EB%98%90%EB%8A%94...%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EC%88%98%20%EC%97%86%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%A0%9C%5D.png)
디렉토리를 로 변경하면 //
와 매우 유사하지만 약간 다른 특수 디렉토리에 배치되는 것 같습니다 /
. 그러나 슬래시( )를 더 추가하려고 하면 ///
막히게 됩니다 /
.
$ cd / ;pwd
/
$ cd // ;pwd
//
$ cd /// ;pwd
/
$ cd //// ;pwd
/
이는 약간 특별한 것처럼 보입니다 //
. 동일한 디렉토리와 모든 항목이 있더라도 에서 반환하는 문자열은 여전히 다릅니다 pwd
. 왜 이런거야? 내 작업 디렉토리는 왜 될 수 있는데 //
그렇지 않습니까 ///
?
답변1
//
가 적용되는 특별한 경우입니다."경로 이름"이라는 용어의 POSIX 정의:
여러 연속 문자는 정확히 두 개의 선행 문자가 있는 경우를 제외하고
<slash>
1과 동일하게 처리됩니다 .<slash>
<slash>
대부분의 시스템 //
과 동일 /
하지만 POSIX에 따라 다르게 허용됩니다.
추가 자료:
- //foo/bar는 /foo/bar와 어떤 시스템에서 다릅니까?
- Linux는 여러 연속 경로 구분 기호(/home///username///files)를 어떻게 처리합니까?
- 유닉스, "/"와 "//"로 시작하는 경로의 차이점
(첫 번째 링크가 가장 좋은 것 같습니다.)