1 디렉토리 변경 : $ pwd /usr $ cd bin && pwd /usr/bin 와 .., 같은 결과 : $ pwd /usr $ cd bin/../bin && pwd /usr/bin 그런데 왜? 왜 쉘이 에러를 던지지 않는가? shell — realguess 소스
3 글쎄 ".."는 예를 들어 "ls -la"로 볼 수있는 디렉토리의 일반 항목 ( ".")이며 상위 디렉토리를 가리 킵니다. 그래서 "cd bin /../ bin"을 분할하면 usr에서 usr / bin으로 이동 한 다음 usr으로 돌아간 다음 usr / bin으로 돌아갑니다. 각 "/"다음에 디렉토리 이동이 수행됩니다. cd bin /./././../bin/../bin/./을 시도해 볼 수도 있습니다. 경우 :) — fede.evol 소스 쉘은 경로를 / 모든 토큰이 다 소모되거나 오류가 발생할 때까지 각 토큰에 따라 디렉토리를 변경하십시오. 일을 계속하는 것의 영향 ../../../..? — realguess 정확히 그것은 단지 하나의 토큰을 분할하고 실행합니다. 따라서 ../../../..는 디렉토리 트리에서 4 단계로 뒤로 이동합니다 (물론이 경로가 존재한다는 사실을 감안할 때) — fede.evol 실제로, 그것은 "정확하게"그런 것이 아닙니다. 대부분의 운영 체제에서 경로 처리를 수행하는 쉘이 아닙니다. 운영 체제 커널입니다. 그리고 루트가 자신의 상위 디렉토리 (경로 구성 요소를 계속 추가 할 수 있는지 여부에 영향을주는)는 운영 체제마다 다른 내용입니다. — JdeBP
/
모든 토큰이 다 소모되거나 오류가 발생할 때까지 각 토큰에 따라 디렉토리를 변경하십시오. 일을 계속하는 것의 영향../../../..
?