嵌入式Linux开发实用教程(“十二五”国家重点图书出版规划项目)
上QQ阅读APP看书,第一时间看更新

1.1.2 目录与路径处理命令

1.切换目录

“cd”命令的作用是从当前目录切换到另一个目录下。如从用户根目录进入/linux目录下,如下操作:

        zhuzhaoqi@zhuzhaoqi-desktop:~$ cd linux/
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$

2.创建新目录

“mkdir”命令的作用是创建一个新的目录,如在/linux目录下再创建一个/linux-3.8.3子目录,如下操作:

        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ mkdir linux-3.8.3
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        linux-3.8.3

mkdir的用法很多,可以通过输入mkdir -help查看,如下:

        zhuzhaoqi@zhuzhaoqi-desktop:~$ mkdir --help
        用法:mkdir [选项]... 目录...
        若指定目录不存在则创建目录
        长选项必须使用的参数对于短选项时也是必需使用的
          -m, --mode=模式  设置权限模式(类似chmod),而不是rwxrwxrwx 减umask
          -p, --parents       需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理
          -v, --verbose       每次创建新目录都显示信息
        -Z, --context=CTX  将每个创建的目录的SELinux 安全环境设置为CTX
        --help       显示此帮助信息并退出
        --version         显示版本并退出

mkdir -p这个指令在U-Boot和Linux内核源码中的Makefile中的使用是相当频繁的。

3.删除目录

如果是删除一个空目录,则使用“rmdir”命令即可;如果该目录下有东西,则不能使用“rmdir”命令删除。

        zhuzhaoqi@zhuzhaoqi-desktop:~/linux/linux-3.6.7$ ls
        arch
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux/linux-3.6.7$ cd ..
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        linux-3.6.7  linux-3.8.3
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ cd linux-3.8.3/
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux/linux-3.8.3$ ls
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux/linux-3.8.3$ cd ..
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        linux-3.6.7  linux-3.8.3
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ rmdir linux-3.8.3/
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        linux-3.6.7
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ rmdir linux-3.6.7/
        rmdir: 删除 "linux-3.6.7/" 失败:目录非空

从上面操作可知,由于/linux-3.8.3目录为空,则可使用“rmdir”删除;但是/ linux-3.6.7目录下有一个子目录/arch,则不能使用“rmdir”删除。此时则应该使用“rm -r”命令删除。

        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        linux-3.6.7
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls linux-3.6.7/
        arch
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ rm -r linux-3.6.7/
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$ ls
        zhuzhaoqi@zhuzhaoqi-desktop:~/linux$

通过“ls”命令可知,linux目录下的linux-3.6.7/目录以及被删除。