sudo cd为什么不能够执行

作者: craneyuan | 来源:发表于2017-04-21 20:19 被阅读838次

    作者:crane-yuan 日期:2017-04-21


    问题描述

    我想要cd/etc/docker,但是它给我一个权限不够的错误,然后,我想到使用sudo cd /etc/docker时,它告诉我sudo: cd:找不到命令

    于是,郁闷的我就去上网找了下原因。

    问题分析

    cd不是一个应用程序而是Linux内建的命令,而sudo仅仅只对应用程序起作用。

    sudo foo只意味着以root权限运行foo程序

    所以,sudo cd /etc/docker会报sudo: cd:找不到命令

    验证

    > type cd
    cd is a shell builtin
    

    注意,关于cd是不是内建命令,OS X 10.8中cd不是内建命令(可以参考what-is-the-point-of-the-cd-external-command),具体其他的版本的OS X我就不清楚了,大部分的Linux系列(Ubuntu、CentOS和ArchLinux)中cd都是内建命令

    解决方法

    • 使用sudo -i命令提升用户权限
    > sudo -i
    > cd /etc/docker
    
    • 使用sudo -s命令打开特殊shell
    > sudo -s
    > cd /etc/docker
    

    上面都可以使用exit命令退出,也可以使用Ctrl+D快捷键退出

    参考文章

    相关文章

      网友评论

        本文标题:sudo cd为什么不能够执行

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