bash에서 export $PATH
를 실행하면 not a valid identifier
. 그 이유는 무엇입니까?
댓글
답변
export $PATH
를 실행하면 값 / $PATH
( 단어 분할 후). 즉, export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
와 같은 내용을 작성하는 것과 같습니다. /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
는 유효한 변수 이름이 아니므로 실패합니다. 하고 싶은 것은 export PATH
입니다.
export
(declare -x
와 동일)는 단순히 변수를 하위 쉘
변수 값을 안전하고 읽기 쉽게 인쇄하려면 printf %q "$PATH"
를 사용하세요.
설명
- 기본적으로 JAVA_HOME, MAVEN_HOME과 같은 일부 변수를 만들고 bash가 올바르게 설정했는지 확인하고 싶으므로 $ PATH를 내보내 경로 변수가 PATH 변수로 올바르게 설정되었는지 확인합니다.
- 이것은 OS에 의존하지 않고 쉘에 의존합니다.
export
가 Bash에서 그렇게 작동했다면 놀랄 것입니다. - 또한 PATH 변수 이미 내보냈으며 필요하지 않습니다. 다시 내보낼 수 있습니다.
답변
다음 명령 export $PATH=somePath
not a valid identifier
를 반환하며 이는 PATH
변수 앞의 $
때문입니다.
p>
솔루션 :
export PATH=somePath
댓글
- 내 질문에 정확히 대답하는 것입니다. 감사합니다 Kevin
Answer
다음과 같이 사용해야합니다.
export PATH=$PATH:/something/bin
대신 :
export $PATH=$PATH:/something/bin
왼쪽에서 $
기호를 제거하세요.
답변
기존 PATH 변수에 $ PATH를 추가해야했을 것입니다.
export PATH=$PATH:/something/bin
댓글
- 알겠습니다. 질문과 같은 야구장에 있지만 왼쪽 필드에 있습니다. .
$
는 “값”입니다. ' 변수PATH
를 내보내고 해당 값에 액세스하지 않으므로 'export PATH
($
없음)