命令“sudo su ls”与“sudo ls”之间的区别

命令“sudo su ls”与“sudo ls”之间的区别

我看到一些命令,例如sudo su ls,我只是想知道之间有什么区别sudo ls

答案1

事实上,您提到的命令执行两个不同的任务。

  • su是一个用于切换到另一个用户的程序。如果执行,su <user>您将启动一个 shell 会话作为另一个用户
  • sudo允许您以 root 用户身份运行单个命令。
  • sudo susu允许您以 root 身份运行。如果执行,sudo su <user>则会启动一个 shell 会话用户

然后,

  • sudo su ls将以用户身份启动 shell(ls如果存在)。
  • sudo ls将列出目录的内容,就像该命令是由 root 用户发出的一样。

如果您对两个等效命令感兴趣,您可以考虑...

sudo bash -c "ls"       # execute "ls" as the root
sudo ls                 # execute "ls" as the root

相关内容