开发者社区> 问答> 正文

Unix 命令行环境 sudo env 和 sudo -s 以后 env 输出为什么不同?

这样:

sudo env
或者:

sudo -s
env

前面一种方法打印出来环境变量明显比后者少, 这是为什么?

展开
收起
a123456678 2016-06-17 16:33:03 2526 0
1 条回答
写回答
取消 提交回答
  • 前者打印的是当前登录用户的所有环境变量值(因调用了sudo便使得当前进程的有效用户是root,从而使得当前登录用户具有执行env命令的权限,而实际用户是当前登录用户,打印的环境变量值为env进程的实际用户的),而后者因为切换至root用户下(env进程的实际用户和有效用户都是root),所以打印的是root用户的所有环境变量值。
    screenshot

    2019-07-17 19:43:05
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载