在 Ubuntu 13.10 中,对于默认设置,以下命令Terminal
user@host:~/path$ sudo su
导致输入提示
root@host:/home/user/path#
这个命令
user@host:~/path$ sudo bash
输入提示
root@host:~/path#
这是否意味着这两个命令之间~
具有不同的含义?
通常我sudo
只使用。但有时这还不够。例如,如果我想编写一个命令来修改某个文件cat >> file <<EOF
,并且该文件只能被写入root
,我必须使用sudo su
或sudo bash
(假设bash
是您的首选 shell)。但上面的例子似乎表明使用sudo bash
更好,因为操作环境更像前一个。是这样吗?这些命令之间还有什么不同?