linux命令[4]: mkdir


mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。

1. 创建一个空目录

[yalishanda@bogon Documents]$ ls
a  oldboy
[yalishanda@bogon Documents]$ mkdir a
mkdir: cannot create directory ‘a’: File exists
[yalishanda@bogon Documents]$ mkdir ssss
[yalishanda@bogon Documents]$ ll
total 0
drwxrwxr-x. 3 yalishanda yalishanda 14 Nov 14 22:31 a
drwxrwxr-x. 2 yalishanda yalishanda  6 Nov 14 22:31 oldboy
drwxrwxr-x. 2 yalishanda yalishanda  6 Nov 15 16:38 ssss
[yalishanda@bogon Documents]$ 

2.递归创建多个目录

[yalishanda@bogon Documents]$ pwd
/home/yalishanda/Documents
[yalishanda@bogon Documents]$ tree
.
├── a
│   └── b
│   └── c
├── oldboy
└── ssss

5 directories, 0 files
[yalishanda@bogon Documents]$ mkdir -p bll/son
[yalishanda@bogon Documents]$ tree
.
├── a
│   └── b
│   └── c
├── bll
│   └── son
├── oldboy
└── ssss

7 directories, 0 files
[yalishanda@bogon Documents]$

3.创建权限为777的文件

[yalishanda@bogon Documents]$ pwd
/home/yalishanda/Documents
[yalishanda@bogon Documents]$ ls -l
total 0
drwxrwxr-x. 3 yalishanda yalishanda 14 Nov 14 22:31 a
drwxrwxr-x. 3 yalishanda yalishanda 16 Nov 15 16:40 bll
drwxrwxr-x. 2 yalishanda yalishanda 6 Nov 14 22:31 oldboy
drwxrwxr-x. 2 yalishanda yalishanda 6 Nov 15 16:38 ssss
[yalishanda@bogon Documents]$ mkdir -m tests
mkdir: missing operand
Try 'mkdir --help' for more information.
[yalishanda@bogon Documents]$ mkdir -m 777 tests
[yalishanda@bogon Documents]$ ls -l
total 0
drwxrwxr-x. 3 yalishanda yalishanda 14 Nov 14 22:31 a
drwxrwxr-x. 3 yalishanda yalishanda 16 Nov 15 16:40 bll
drwxrwxr-x. 2 yalishanda yalishanda 6 Nov 14 22:31 oldboy
drwxrwxr-x. 2 yalishanda yalishanda 6 Nov 15 16:38 ssss
drwxrwxrwx. 2 yalishanda yalishanda 6 Nov 15 16:42 tests
[yalishanda@bogon Documents]$

r[read读]---4

w[write写]---2

x[excute执行]---1

-[应该是咩有相关权限]---0

rwxrwxrwx是三位一组,即:rwx[4+2+1=7]rwx[4+2+1=7]rwx[4+2+1=7]

tests 文件夹的权限是 rwxrwxrwx[即777]

oldboy文件夹的权限是 rwxrwxr-x[即775]

4.创建新目录都显示信息

[yalishanda@bogon Documents]$ tree
.
├── a
│   └── b
│   └── c
├── bll
│   └── son
├── oldboy
├── ssss
└── tests

8 directories, 0 files
[yalishanda@bogon Documents]$ mkdir -v fff
mkdir: created directory ‘fff’
[yalishanda@bogon Documents]$ mkdir -vp ggg/zhus
mkdir: created directory ‘ggg’
mkdir: created directory ‘ggg/zhus’
[yalishanda@bogon Documents]$

 

5.创建目录树

 坏习惯 
~ $ mkdir tmp
~ $ cd tmp
~/tmp $ mkdir a
~/tmp $ cd a
~/tmp/a $ mkdir b
~/tmp/a $ cd b
~/tmp/a/b/ $ mkdir c
~/tmp/a/b/ $ cd c
~/tmp/a/b/c $

使用 mkdir 的 -p 选项并在单个命令中创建所有父目录及其子目录要容易得多。但是即使对于知道此选项的管理员,他们在命令行上创建子目录时也仍然束缚于逐步创建每级子目录。花时间有意识地养成这个好习惯是值得的:

 好习惯 1 的示例:使用一个命令来定义目录树
~ $ mkdir -p tmp/a/b/c
好习惯 1 的另一个示例:使用一个命令来定义复杂的目录树

[yalishanda@bogon Documents]$ tree
.
├── a
│   └── b
│   └── c
├── bll
│   └── son
├── fff
├── ggg
│   └── zhus
├── oldboy
├── ssss
└── tests

11 directories, 0 files
[yalishanda@bogon Documents]$ clsar
bash: clsar: command not found...
[yalishanda@bogon Documents]$ clear

[yalishanda@bogon Documents]$ mkdir -vp project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}
mkdir: created directory ‘project’
mkdir: created directory ‘project/lib’
mkdir: created directory ‘project/lib/ext’
mkdir: created directory ‘project/bin’
mkdir: created directory ‘project/src’
mkdir: created directory ‘project/doc’
mkdir: created directory ‘project/doc/html’
mkdir: created directory ‘project/doc/info’
mkdir: created directory ‘project/doc/pdf’
mkdir: created directory ‘project/demo’
mkdir: created directory ‘project/demo/stat’
mkdir: created directory ‘project/demo/stat/a’
[yalishanda@bogon Documents]$ tree
.
├── a
│   └── b
│   └── c
├── bll
│   └── son
├── fff
├── ggg
│   └── zhus
├── oldboy
├── project
│   ├── bin
│   ├── demo
│   │   └── stat
│   │   └── a
│   ├── doc
│   │   ├── html
│   │   ├── info
│   │   └── pdf
│   ├── lib
│   │   └── ext
│   └── src
├── ssss
└── tests

23 directories, 0 files
[yalishanda@bogon Documents]$

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM