当我对sudo使用任何命令时,环境变量都不存在。例如,在设置HTTP_代理之后,命令wget在没有sudo的情况下可以正常工作。但是,如果我键入sudowget,它会说它不能绕过代理设置
首先,您需要导出HTTP\U代理。第二,您需要仔细阅读mansudo,并注意-E标志。这项工作:
$export HTTP\u PROXY=foof
$sudo-ebash-c'echo$HTTP\u PROXY'
以下是手册页中的引用:
-E,--preserve env
向安全策略指示用户希望保留其权限
现有环境变量。安全策略可能返回错误
如果用户没有保留环境的权限。