동일한 소프트웨어에 대한 경로를 포함해야 하지만 두 개의 다른 버전이 두 개의 다른 위치에 설치되어 있어야 합니다. 왜냐하면 이 파일에 대한 편집 권한이 없고 이러한 다른 위치에 다른 소프트웨어가 있으므로 두 디렉터리를 모두 포함해야 하기 때문입니다.
첫 번째 디렉토리 $HOME
에는 많은 소프트웨어가 포함되어 있고, 두 번째 디렉토리에는 /grid/common/
더 적은 수의 최신 버전이 포함되어 있습니다. 따라서 경로 환경 변수를 정의할 때 두 번째 폴더가 첫 번째 폴더 앞에 오도록 하고 싶습니다.
내 스크립트에서:
setenv LD_LIBRARY_PATH $HOME/lib:/grid/common/lib
이 경우 /grid/common/
선행 됩니까 $HOME
, $HOME
선행됩니까 ?/grid/common/
답변1
후자: $HOME/lib
앞(표지) /grid/common/lib
. 관례적으로 콜론으로 구분된 디렉터리 경로 목록을 제공하는 환경 변수는 다음에서 가져옵니다.왼쪽에서 오른쪽으로.
POSIX여러 "경로" 변수가 나열되어 있으며 모두 왼쪽에서 오른쪽으로 처리됩니다( CDPATH
, NLSPATH
, 포함) PATH
. 이것을 언급하지 않는다는 것이 이상합니다(나열된 여러 변수보다 더 일반적으로 사용됩니다).
종종 문서에서는 왼쪽에서 오른쪽으로 말하지 않고 독자의 문화적 편견이 나머지 세부 사항을 채운다고 가정하고 "순서"만 말합니다.