다음 명령은 정확히 무엇을 수행합니까?
sudo -E env PATH=$PATH
나는 그것이 하는 일의 단순한 의미를 이해할 수 없습니다.
-E
환경 변수를 호출하는 사용자를 전달한다는 것을 알고 있지만 sudo
?env
답변1
이 맥락에서 env
환경 변수는 실행하기 전에 셸에서 삽입한 사용자 정의 값을 사용하여 인쇄되고 인수 목록에 전달됩니다. 환경 ** 설정은 손상 가능성 없이 특정 설정으로 실행되도록 보장되지만 환경을 통해 전달되어야 하는 매개 변수를 통해 보존되어야 한다는 점을 고려하면 중복된 것처럼 보입니다.PATH
sudo
sudo
-E
PATH
sudo
sudo ... env PATH="$PATH" cmd ...
cmd ...
PATH
sudo
**예약의 의미는 발매 상황에 따라 달라집니다.sudo
sudo
2016년경에는 중복 항목의 첫 번째 환경 변수가 유지되는 반면 , bash
다른 프로그램에서는 중복 항목의 마지막 환경 변수를 사용합니다.