명령 행에서 변수를 어떻게 설정 해제합니까? 명령을 시도했습니다 yaourt. export ALL_PROXY=http://proxy.example.com:8080 문제는 프록시 설정을

프록시를 설정하기 위해 다음 명령을 시도했습니다 yaourt.

export ALL_PROXY=http://proxy.example.com:8080

문제는 프록시 설정을 해제하는 방법입니다 yaourt. 일반적으로 현재 쉘에서 변수 값을 어떻게 설정 해제 할 수 있습니까?



답변

환경 변수를 제거하려면 다음을 실행하십시오.

unset ALL_PROXY

환경 변수는 프로그램과 프로그램이 시작될 때만 적용됩니다. 하나의 쉘 창에서 환경 변수를 설정하면 다른 쉘 창에 영향을 미치지 않습니다.

export ALL_PROXY=…초기화 파일에 추가 한 경우 해당 파일을 제거하십시오.

export인수없이 실행 하여 현재 쉘에 어떤 환경 변수가 설정되어 있는지 확인할 수 있습니다.

해당 쉘에서 시작한 프로그램에서 쉘 변수를 사용할 수있게 export VAR하려면 할당 후 실행 VAR=VALUE하거나 두 개 ( export VAR=VALUE)를 결합하여 내 보내야합니다 .


답변

bash에서 바운드 변수를 설정 해제하려면 unset VARIABLE( unset ALL_PROXY경우에 따라)를 사용 하십시오. 이 명령은 실제로 변수를 삭제합니다. 다음과 같이 변수 값을 비워 둘 수도 있습니다.

VARIABLE=

또는

VARIABLE=""

차이점은 후자의 두 명령이 변수를 삭제하지 않는다는 것입니다. -uwith 플래그를 사용하여 set대체하는 동안 설정되지 않은 변수를 오류로 처리하도록 하여 차이를 확인할 수 있습니다 .

/home/user1> var=""
/home/user1> echo $var

/home/user1> set -u
/home/user1> echo $var

/home/user1> unset var
/home/user1> echo $var
-bash: var: unbound variable

위의 예에서, 배쉬에 대한 불만을 var예상 오류 (이 두 번째 에코 명령에서 발생하지 않습니다 의미이다 (그 값을 설정 해제 후) 언 바운드 var인 값이 empty또는 null).


답변