컴퓨터/노트북/인터넷
IT 컴퓨터 기기를 좋아하는 사람들의 모임방
🕰️
2022.02.19 09:02
자식 쉘이 부모 쉘에게 변수를 주는 방법이 있을까요?
조회 수 224 추천 수 0 댓글 0
프록시 설정이 필요한 리눅스 서버가 있는데 콘솔에 로그인해서
매번 export http_proxy="http://IP:Port" 입력하기는 번거롭고
~/.bashrc 에 넣자니 모든 사용자 계정마다 다 넣어주는 것도 고역이다
따로 setProxy.sh 를 만들었습니다.
#!/usr/bin/env bash
http_proxy="http://IP:PORT"
https_proxy="http://IP:PORT"
export http_proxy https_proxy
echo $http_proxy
문제는 setProxy.sh 를 아예 /usr/local/bin/proxy 로 넣어놔서 시작인데요
평소에 . setProxy.sh 로 실행시키면 되는데
이것도 계정마다 위치 넣어주기 귀찮아서 /usr/local/bin/proxy 로 링크를 걸어 설정했더니
명령어 proxy는 자식쉘이라서 정작 콘솔하고 있는 곳에서는 영향을 못주더라구요..
proxy 입력시 echo $http_proxy 때문에 http://IP:PORT 이 정상적으로 출력은 되는데
다시 콘솔에서 echo $http_proxy 를 입력 시 부모쉘에는 영향을 안받았으니까 빈칸이 나오고 프록시가 안됩니다.
해결하려면 명령을 부모쉘을 그대로 쓰는 ". proxy" 로 해줘야 하는데 이건 제대로된해결책이 아닌 것 같아서요
그냥 proxy를 쓰지만 부모쉘에 http_proxy 변수가 설정되게 하려면 어떻게 해야 할까요?