当我在Bash 3.2.48中运行以下脚本时:
#!/bin/bash
export var1='var1'
echo "UID=$UID"
if [ x"$UID" != x"0" ]
then
export var2='var2'
while ! { sudo -v; }; do { sudo -v; }; done;
sudo $0
exit
fi
echo $var1
echo $var2
exit 0
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
UID=1000
UID=0
var1
Run Code Online (Sandbox Code Playgroud)
为什么var2没有导出和回显?我很确定相同的脚本适用于较旧的Bash版本.
从sudo打电话,你进入干净的环境.
| 归档时间: |
|
| 查看次数: |
628 次 |
| 最近记录: |