美文网首页每天写500字每周500字每天写1000字
linux命令行学习(31):用su命令更改身份

linux命令行学习(31):用su命令更改身份

作者: 金石明镜 | 来源:发表于2019-10-31 20:12 被阅读0次

    系统中有不同的用户时,我们可以用不同的身份登陆系统。

    最费事的办法是退出系统,然后以另一用户的账号密码登陆。但是,linux系统提供了不退出系统就更改身份的命令。其中之一为su命令(另一个为sudo命令)。

    一、用su命令切换为其他用户

    格式:su [-[l]] [user]

    这个命令以另一用户身份启动shell。这个用户必须存在。

    如果当前是超级用户,则这个命令直接改变身份。如果不是,则系统提示输入指定用户的密码。

    如果没有指定用户,则切换到超级用户。

    如果包含“-l”选项,那么得到的shell会话界面将是用于指定用户的登录shell (login shell)界面。这就意味着,该指定用户的运行环境将被加载,而且其工作目录也将更改为该指定用户的主目录。这也常常我们是想要得到的结果。

    我们从屏幕上可以观察的是,加-l后,工作目录变为指定的用户的主目录,不加-l,则工作目录不改变。

    -l选项可以省略为-。

    要回到原来的用户,使用命令exit。

    二、用su命令以其他用户身份执行命令

    可以不必切换到其他用户身份,用su命令以其他用户身份执行单个命令。格式为:

    su -c 'command' [user]

    其中,command是要以user身份执行的命令,要用单引号括住。

    例如:

    su -c 'ls -l /root/*'

    这里,没有指定其他用户,这个其他用户就是超级用户。

    同前面一样,需要但输入指定用户的密码,然后执行指定的命令。但超级用户以其他用户身份执行命令,无须输入密码。

    相关文章

      网友评论

        本文标题:linux命令行学习(31):用su命令更改身份

        本文链接:https://www.haomeiwen.com/subject/ubxxbctx.html