Bash 스크립트에 상대 경로(파일, 디렉터리 지정...)가 포함된 경우 경로는 다음과 관련됩니다.
- Bash 스크립트의 상위 디렉터리의 경로 이름, 또는
- bash 스크립트를 실행 중인 현재 디렉토리는 무엇입니까?
Python 스크립트, Java 프로그램, C 프로그램, C++ 프로그램에서 유사한 질문을 하면... 동일한 대답이 있습니까?
감사해요.
연결된 질문과 유사점이 없습니다. 내가 묻는 것은 프로그램의 상대 경로가 무엇을 기준으로 하는가입니다.
답변1
상위 디렉터리는 프로젝트가 포함된 디렉터리입니다.
- 파일의 경우 상위 경로는
.
파일이 있는 위치이기 때문입니다. 파일 자체는./file
. - 디렉터리의 경우 상위 디렉터리 는 디렉터리 자체
..
입니다 ..
이는 Linux의 일반적인 표기법이며 널리 알려져 있습니다. 이론적으로 일부 언어에서는 다른 표기법을 사용할 수도 있지만 예를 들 수는 없습니다.
이것은 두뇌의 힘을 통해 상대 경로를 쉽게 추론할 수 있는 절대 경로를 사용하는 예입니다.
$ echo 'readlink -f "$0"' > script
$ ln -s script link
$ chmod +x script
$ ./script
/home/tomas/x/script
$ ./link
/home/tomas/x/script
$ readlink -f .
/home/tomas/x
$ readlink -f ..
/home/tomas