简单地说,这是为什么?难道sudo echo whoami
也会返回root更有意义吗?
干杯
me:~$ whoami
me
me:~$ sudo whoami
root
me:~$ sudo echo `whoami`
me
答案 0 :(得分:4)
这种情况正在发生,因为whoami
在sudo和echo之前被替换了。基本上是:
sudo echo `whoami`
首先成为
sudo echo me
然后它被执行了。
答案 1 :(得分:2)
原因就像@Andriy所说,但如果你想要打印 root :
只是改变反引号位置:
sudo `echo whoami`
将打印: root