天天看點

每日必學Linux指令:mkdir指令

作者:Linux運維大學營

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

1.指令格式:

mkdir [選項] 目錄名或路徑名
           

2.指令功能:

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

3.指令參數:

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

4.指令執行個體:

1:建立一個空目錄

指令:

mkdir test1           

輸出:

hc@hc-virtual-machine:~$ ls
PycharmProjects  snap  公共的  模闆  視訊  圖檔  文檔  下載下傳  音樂  桌面
hc@hc-virtual-machine:~$ mkdir test1
hc@hc-virtual-machine:~$ ls
PycharmProjects  snap  test1  公共的  模闆  視訊  圖檔  文檔  下載下傳  音樂  桌面           

2:遞歸建立多個目錄

指令:

mkdir -p test2/test22           

輸出:

hc@hc-virtual-machine:~$ mkdir -p test2/test22
hc@hc-virtual-machine:~$ ls
PycharmProjects  test1  公共的  視訊  文檔  音樂
snap             test2  模闆    圖檔  下載下傳  桌面
hc@hc-virtual-machine:~$ cd test2/
hc@hc-virtual-machine:~/test2$ ls
test22           

3:建立權限為777的目錄

指令:

mkdir -m 777 test3           

輸出:

hc@hc-virtual-machine:~/test2$ mkdir -m 777 test3
hc@hc-virtual-machine:~/test2$ ll
總用量 16
drwxrwxr-x  4 hc hc 4096 10月 25 09:13 ./
drwxr-xr-x 25 hc hc 4096 10月 25 09:11 ../
drwxrwxr-x  2 hc hc 4096 10月 25 09:11 test22/
drwxrwxrwx  2 hc hc 4096 10月 25 09:13 test3/           

說明:

ll 與 ls -l 指令效果相同

test3 的權限為rwxrwxrwx

4:建立新目錄并顯示建立資訊

指令:

mkdir -v test4           

輸出:

hc@hc-virtual-machine:~/test2$ mkdir -v test4
mkdir: 已建立目錄 'test4'
hc@hc-virtual-machine:~/test2$ ls
test22  test3  test4           

5:建立目錄及其子目錄并顯示建立資訊

指令:

mkdir -vp test5/test5-1           

輸出:

hc@hc-virtual-machine:~/test2$ mkdir -vp test5/test5-1
mkdir: 已建立目錄 'test5'
mkdir: 已建立目錄 'test5/test5-1'
hc@hc-virtual-machine:~/test2$ ls
test22  test3  test4  test5
hc@hc-virtual-machine:~/test2$ cd test5/
hc@hc-virtual-machine:~/test2/test5$ ls
test5-1           

6. 通過一個指令建立出項目的目錄結構

指令:

mkdir -vp scf/{lib/,bin/,doc/{info,product},logs/{info,product},service/deploy/{info,product}}           

輸出:

hc@hc-virtual-machine:~/test2/test5$ ls
test5-1
hc@hc-virtual-machine:~/test2/test5$ pwd
/home/hc/test2/test5
hc@hc-virtual-machine:~/test2/test5$ 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'
hc@hc-virtual-machine:~/test2/test5$ ls
scf  test5-1
hc@hc-virtual-machine:~/test2/test5$ tree scf/
scf/
├── bin
├── doc
│   ├── info
│   └── product
├── lib
├── logs
│   ├── info
│   └── product
└── service
    └── deploy
        ├── info
        └── product

12 directories, 0 files
hc@hc-virtual-machine:~/test2/test5$ 
           

說明:

tree指令可以用來檢視目錄樹,需要自行安裝後才能使用,Ubuntu安裝指令: apt install tree

__EOF__

關注 工 仲 好:IT運維大學營,擷取60個G的《網工系統大禮包》

每日必學Linux指令:mkdir指令

V:glab-mary

轉載:https://www.cnblogs.com/huchong/p/9847844.html