描述
mkdir命令是“make directories”的缩写,用来创建目录。
默认状态下,如果要创建的目录已经存在,则提示已存在,而不会继续创建目录。 所以在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。 mkdir命令还可以同时创建多个目录
注意:在创建文件时,不要把所有的文件都存放在主目录中,可以创建子目录,通过它们来更有效地组织文件。最好采用前后一致的命名方式来区分文件和目录。
例如,目录名可以以大写字母开头,这样,在目录列表中目录名就出现在前面。在一个子目录中应包含类型相似或用途相近的文件。
例如,应建立一个子目录,它包含所有的数据库文件,另有一个子目录应包含电子表格文件,还有一个子目录应包含文字处理文档,等等。
目录也是文件,它们和普通文件一样遵循相同的命名规则,并且利用全路径可以唯一地指定一个目录。
语法格式
mkdir [参数] [目录]
常用参数
参数 | 全称 | 原文 | 描述 |
---|---|---|---|
-p | –parents | no error if existing, make parent directories as needed | 递归创建多级目录 |
-m | –mode=MODE | set file mode (as in chmod), not a=rwx - umask | 建立目录的同时设置目录的权限 |
-v | –verbose | print a message for each created directory | 为每一个创建的目录打印一条消息 |
-Z | set SELinux security context of each created directory to the default type | 设置每个创建目录的SELinux安全上下文到默认类型 | |
–version | output version information and exit | 查看版本信息并且退出 |
参考实例
- 在工作目录下创建一个study目录
> mkdir study
2.在目录/usr/study目录下建立子目录dir,并且设置文件属主有读、写和执行权限,其他人无权访问
> mkdir -m 700 /usr/study/dir
- 同时创建子目录dir1,dir2,dir3:
> mkdir dir1 dir2 dir3
> ls
dir1 dir2 dir3
- 递归创建目录a>b>c>d>e>f
> mkdir a/b/c/d/e/f # 没有加-p参数是显示的错误信息
mkdir: cannot create directory ‘a/b/c/d/e/f’: No such file or directory
> mkdir -p a/b/c/d/e/f
> tree
.
├── a
│ └── b
│ └── c
│ └── d
│ └── e
│ └── f
├── dir1
├── dir2
└── dir3
- 打印mkdir的版本信息
> mkdir --version
mkdir (GNU coreutils) 8.25
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by David MacKenzie.