每天五分鐘linux(4)-mkdir

habits發表於2017-07-20

mkdir


轉自http://www.cnblogs.com/peida/archive/2012/10/25/2738271.html


linux mkdir 命令用來建立指定的名稱的目錄,要求建立目錄的使用者在當前目錄中具有寫許可權,並且指定的目錄名不能是當前目錄中已有的目錄。

1.命令格式:

mkdir [選項] 目錄…

2.命令功能:

通過 mkdir 命令可以實現在指定位置建立以 DirName(指定的檔名)命名的資料夾或目錄。要建立資料夾或目錄的使用者必須對所建立的資料夾的父資料夾具有寫許可權。並且,所建立的資料夾(目錄)不能與其父目錄(即父資料夾)中的檔名重名,即同一個目錄下不能有同名的(區分大小寫)。

3.命令引數:

-m, –mode=模式,設定許可權<模式> (類似 chmod),而不是 rwxrwxrwx 減 umask
-p, –parents 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項後,系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄;
-v, –verbose 每次建立新目錄都顯示資訊
–help 顯示此幫助資訊並退出
–version 輸出版本資訊並退出

4.命令例項:

4.1 例一:建立一個空目錄

命令:
mkdir test1
輸出:

zgy@NLP ~ $ mkdir test1
zgy@NLP ~ $ ls
anaconda3  cnn  pytorch  stanford-segmenter-2015-12-09  test1  word2vec
4.2 例二:遞迴建立多個目錄

命令:
mkdir -p test2/test22
輸出:

zgy@NLP ~/test1 $ mkdir -p test2/test22
zgy@NLP ~/test1 $ ll
total 12
drwxrwxr-x  3 zgy zgy 4096 Jul 20 10:07 .
drwxr-xr-x 16 zgy zgy 4096 Jul 20 10:04 ..
drwxrwxr-x  3 zgy zgy 4096 Jul 20 10:07 test2
zgy@NLP ~/test1 $ cd test2
zgy@NLP ~/test1/test2 $ ll
total 12
drwxrwxr-x 3 zgy zgy 4096 Jul 20 10:07 .
drwxrwxr-x 3 zgy zgy 4096 Jul 20 10:07 ..
drwxrwxr-x 2 zgy zgy 4096 Jul 20 10:07 test22
zgy@NLP ~/test1/test2 $ 
4.3 例三:建立許可權為777的目錄

命令:
mkdir -m 777 test3
輸出:

zgy@NLP ~/test $ mkdir -m 777 test3
zgy@NLP ~/test $ ll
total 20
drwxrwxr-x  5 zgy zgy 4096 Jul 20 10:10 .
drwxr-xr-x 16 zgy zgy 4096 Jul 20 10:09 ..
drwxrwxr-x  2 zgy zgy 4096 Jul 20 10:10 test1
drwxrwxr-x  3 zgy zgy 4096 Jul 20 10:10 test2
drwxrwxrwx  2 zgy zgy 4096 Jul 20 10:10 test3

說明:
test3 的許可權為rwxrwxrwx

4.4 例四:建立新目錄都顯示資訊

命令:
mkdir -v test4
輸出:

zgy@NLP ~/test $ mkdir -v test5
mkdir: created directory ‘test5’
zgy@NLP ~/test $ mkdir -vp test6/test66
mkdir: created directory ‘test6’
mkdir: created directory ‘test6/test66’
4.5 例五:一個命令建立專案的目錄結構

參考:http://www.ibm.com/developerworks/cn/aix/library/au-badunixhabits.html
命令:
mkdir -vp scf/{lib/,bin/,doc/{info,product},logs/{info,product},service/deploy/{info,product}}
輸出:

[root@localhost test]# mkdir -vp scf/{lib/,bin/,doc/{info,product},logs/{info,product},service/deploy/{info,product}}
mkdir: 已建立目錄 “scf”
mkdir: 已建立目錄 “scf/lib”
mkdir: 已建立目錄 “scf/bin”
mkdir: 已建立目錄 “scf/doc”
mkdir: 已建立目錄 “scf/doc/info”
mkdir: 已建立目錄 “scf/doc/product”
mkdir: 已建立目錄 “scf/logs”
mkdir: 已建立目錄 “scf/logs/info”
mkdir: 已建立目錄 “scf/logs/product”
mkdir: 已建立目錄 “scf/service”
mkdir: 已建立目錄 “scf/service/deploy”
mkdir: 已建立目錄 “scf/service/deploy/info”
mkdir: 已建立目錄 “scf/service/deploy/product”
[root@localhost test]# tree scf/
scf/
|-- bin
|-- doc
|   |-- info
|   `-- product
|-- lib
|-- logs
|   |-- info
|   `-- product
`-- service
        `-- deploy
            |-- info
            `-- product
12 directories, 0 files


相關文章