$cat test
export var=value
$source ./test
$cat print.sh
echo $var
$chmod +x print.sh
$echo $var
value
$sudo ./print.sh
我什么也没得到。我期望看到价值。
到底是怎么回事?
答案1
如果您想使用 sudo 保留环境,请使用sudo -E
它将保留环境。
如果您需要始终保留某些环境变量,请编辑 sudoers 文件以添加行:
Defaults env_reset
Defaults env_keep += "YOURVARIABLE OTHERVARIABLE YETANOTHER"