/Users/lukas
"절대"경로입니다. 행간 /
은 파일 시스템의 루트 디렉토리를 나타냅니다.
lukas
"상대적"경로입니다. 루트에 고정되어 있지 않으므로 " 현재 디렉토리 에서 이것을 찾으십시오"를 의미 합니다. 현재 디렉토리가 /Users
없거나 (또는 디렉토리가 있는 다른 디렉토리) 그렇지 lukas
않으면 실패합니다.
따라서 다음과 같은 가정하에 예제를 살펴 보겠습니다 /Users/lukas
.
$ cd Documents/
/Users/lukas/Documents
주어진 상대 경로 => 안에있는 "Documents"디렉토리로 변경하십시오 /Users/lukas
.
$ cd /Documents
-bash: cd: /Documents: No such file or directory
주어진 절대 경로 == 디렉토리로 변경 /Documents
.
$ pwd
/
이것은 작업 디렉토리를 루트 디렉토리로 변경했음을 보여줍니다 /
( cd
이를 수행 하는 명령은 표시되지 않았습니다).
$ cd Users
/Users
주어진 상대 경로 => 안에있는 "Users"디렉토리로 변경하십시오 /
.
$ cd /Users
/Users
주어진 절대 경로 == 디렉토리로 변경 /Users
.
매번 열쇠는 그 선두 /
입니다. 그것으로 경로는 절대적입니다. 그것이 없으면 경로는 상대적입니다. 이 규칙은 모든 절대 경로가로 시작하기 때문에 명확 /
합니다 (루트 디렉토리는 항상이므로 /
).
해당 알고리즘을 느슨하게 설명하는 의사 코드는 다음과 같습니다.
MakePathAbsolute(path):
if <path> starts with '/'
return <path>
else
return <current directory>/<path>
전달한 인수 cd
는이 알고리즘 을 거 칩니다. 변경하려는 디렉토리는 알고리즘이 반환하는 경로입니다.
더 읽을 거리 :