Linux命令mkdir创建目录,你了解吗?

    /    2019-02-22

【命令星级】 ★ ★ ★ ★ ★

【功能说明】

       mkdir命令是“makdirectories”中每个单词的粗体字母组合而成,其功能是创建目录,默认情况下,如果要创建的目录已存在,则会提示此文件已存在,而不会继续创建目录。

【语法格式】

mkdir [option] [directoty]
mkdir [选项] [目录]

说明:

       1) 注意mkdir命令以及后面的选项和目录,每个元素之间都至少要有一个空格。

       2) mkdir命令可以同时创建多个目录,格式为mkdir dirl dir2 …

【选项说明】

下表针对该命令的参数选项进行了说明。

mkdir命令的参数选项及说明:

参数选项

解释说明(带※的为重点)

-P

① 递归创建目录,递归的意思是父目录及其子目录及子目录的子目录…… ※

② 即使要创建的目录事先已存在也不会报错提示目录已存在

-m

设置新创建目录的默认目录对应的权限

-V

显示创建目录的过程


mkdir使用范例

一、基础范例

范例1:不使用任何命令参数创建目录用法示例。

我们先来査看下当前的目录树结构,命令如下:

[root@oldboy ~]# cd
[root@oldboy ~]# tree -d
.    #<==根据结果可以看出当前肖录下没有任何目录。

0 directories 

开始测试创建目录,并检查:

[root@oidboy ~]# mkdir data     #<==在当前目录下创建data目录,此处的data是相对路径。
[root@oldboy ~]# tree -d
.
    data     #<==可以看到data目录已经创建。
1 directory 
[root@oldboy ~]# mkdir data     #<==再次执行创建命令会提示目录已经存在。
mkdir: cannot create directory ‘data’: File exists

扩展知识:

Windows下的目录路径样式为D:\data\test,而Linux下的路径样式为/data/test,它们的目录顶点和分隔符均不同。

范例2使用-p参数递归创建目录。

当我们创建多级目录时,如果第一级目录(oldboy)不存在,那么创建结果会报错,导致无法创建成功,操作如下:

[root@oldboy ~]# mkdir oldboy/test
mkdir: cannot create directory ‘oldboy/test’: No such file or directory    #<==提示没有这个文件或目录。

此时,可以指定-P参数递归创建多级目录:

[root@oldboy ~]# mkdir -p oldboy/test
[root@oldboy ~]# tree -d
.
    data
    oldboy     #<==同时创建了oldboy目录,以及oldboy下的子目录test。
        test

3 directories

使用mkdir创建多级目录时,建议直接使用-p参数,可以避免出现“No such file or directory”这样没有文件或目录的报错了,不会影响已存在的目录。

范例3:加-v参数显示创建目录的过程

使用-v参数显示创建目录的详细过程,具体操作命令如下:

[root@oldboy ~J# mkdir -pv oldboy2/test
mkdir: created directory 'oldboy2'
mkdir: created directory 'oldboy2/test'

提示:其实这个-v没有什么实际用途。

范例4:创建目录时可使用-m参数设置目录的默认权限。

使用-v参数显示创建目录的详细过程,具体操作命令如下:

[root@oldboy ~]# mkdir dir1
[root@oldboy ~] # ls -ld dir1
drwxr-xr-x 2 root root 4096 Nov 5 18:21 dir1   #<==创建该目录默认权限为7 55。
[root@oldboy ~]# mkdir -m 333 dir2             #<==创建目录时指定333的数字权限。
[root@oldboy ~]# ls -ld dir2
d-wx-wx-wx 2 root root 4096 Nov 518:21 dir2    #<==可以看到权限已经发生交化了。


查看下一篇mkdir命令的特殊性技巧和生产案例:  mkdir命令范例及生产案例介绍 

(2)

分享至