환경 변수와 셸 변수의 입구
그것은 환경 변수와 케이스 변수다.
- 환경 변수는
현재 셸에 정의된 하위 프로세스 또는 셸 상속 변수
- 셸 변수는
정의된 셸에만 포함된 변수
이것들이 어떤 작용과 차이를 하는지 알기 위해 지령선을 사용하면서 본다.
(작성자 환경: MacOS Big Sur ver11.2.3 Bash)
변수 및 다음 명령의 동작은 설정된 하우징에 따라 달라집니다.
사용할 명령
printenv
전체 또는 특정 환경 변수와 해당 값을 표시합니다.예를 들어
printenv SHELL
를 입력하면 SHELL=/bin/zsh
의 결과가 돌아온다.env
명령도 환경 변수를 동일하게 나열할 수 있습니다.set
모든 또는 특정한 셸 변수와 그 값을 표시합니다.echo $変数名
이 방법을 통해 특정 변수의 값을 얻을 수도 있다.위의 두 가지와 달리 변수 이름 앞에 $US를 입력해야 합니다.
변수 설정
새 변수를 설정하려면 터미널에 다음 명령을 입력하십시오.
예:
VAR=test
변수 이름 = 이 값으로 입력하면, 변수는 케이스 안에 설정됩니다.설정이 맞는지 확인해 봐.
set | grep VAR
를 입력하면 VAR=test
가 표시됩니다.등록된 것 같은데.
그럼
printenv | grep VAR
어때요?결과는 아무런 보답도 없었다.
셸 변수로 등록되었으나 환경 변수로 등록되지 않았습니다.
환경 변수 설정
export 명령을 사용하여 등록된 변수를 환경 변수로 설정합니다.
export VAR
그런 다음 printenv | grep VAR
를 입력하면 VAR 변수가 표시됩니다.또
export VAR2=test
는 한꺼번에 환경 변수로 설정할 수 있다.참고로 이 변수들은 파일에 등록되어 있지 않기 때문에 다시 시작하면 삭제됩니다.
변수 삭제
방금 설정한 환경 변수를 삭제합니다.export의 - n 옵션을 사용하여 삭제할 수 있습니다.
export -n VAR
printenv 결과를 보면 발견된 객체의 VAR 변수가 삭제되었습니다.unset 명령을 사용하여 셸 변수를 삭제합니다.
unset VAR
또한 unset 명령을 사용하면 대상 변수도 케이스 변수와 환경 변수에서 삭제됩니다.set 명령에 대한 옵션 설정하기
조개껍질은 각양각색의 옵션을 부여받았다.
어떤 물건이 있는지 보기 위해
set -o
를 입력하면 아래 목록이 표시됩니다.allexport off
braceexpand on
emacs on
errexit off
errtrace off
functrace off
hashall on
histexpand on
history on
ignoreeof off
interactive-comments on
keyword off
monitor on
noclobber off
noexec off
noglob off
nolog off
notify off
nounset off
onecmd off
physical off
pipefail off
posix on
privileged off
verbose off
vi off
xtrace off
각 옵션의 상세한 내용은 언급하지 않지만 케이스에서 작업할 때의 편리성과 효율을 높일 수 있다.이러한 옵션은 각각 ON/OFF로 설정되지만 설정을 변경할 수도 있습니다.
예를 들어, vi 옵션을 ON으로 설정하려면
set -o vi
를 입력합니다.대신 옵션을 끄려면
set +o vi
를 입력합니다.또한 이러한 설정은 현재 로그인 세션에서만 유지됩니다.
구성을 영구적으로 저장하려면 뒤에 설명된 셸의 시작 파일을 편집합니다.
시작 파일
셸의 설정 정보는 여러 시작 파일(설정 파일)에 저장됩니다.
케이스가 시작되면 이 시작 파일의 설정 내용을 읽을 수 있습니다.
그럼 이 시작 파일들을 어떻게 실행합니까?
사용자가 로그인하면 다음 순서로 처리를 시작합니다.
시스템 전체란 모든 사용자에게 적용되는 설정이다.
.bashrc 파일은 bashrc 파일을 실행합니다.특정 사용자의 별명과 함수도 저장되었다.
/etc/bashrc 파일은 시스템 전체의 별명과 함수를 저장합니다.
이 조작을 실행한 후에야 사용자는 로그인해서 조개껍질을 시작할 수 있습니다.
. bashrc 파일에 별명이나 함수를 추가할 때 끝에 추가해야 합니다.
Reference
이 문제에 관하여(환경 변수와 셸 변수의 입구), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/yururi/articles/a7b2d72f418fba4e16b7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)