【发布时间】:2017-05-22 06:59:40
【问题描述】:
简单地说,这是为什么呢? sudo echo whoami 也返回 root 不是更有意义吗?
干杯
me:~$ whoami
me
me:~$ sudo whoami
root
me:~$ sudo echo `whoami`
me
【问题讨论】:
标签: shell ubuntu scripting sudo
简单地说,这是为什么呢? sudo echo whoami 也返回 root 不是更有意义吗?
干杯
me:~$ whoami
me
me:~$ sudo whoami
root
me:~$ sudo echo `whoami`
me
【问题讨论】:
标签: shell ubuntu scripting sudo
这是因为 whoami 在 sudo 和 echo 之前被替换。基本上:
sudo echo `whoami`
先成为
sudo echo me
然后它 sudo 被执行。
【讨论】:
原因就像@Andriy 说的,但如果你想打印 root:
只需更改反引号位置:
sudo `echo whoami`
它将打印:root
【讨论】: