? ?mkdir
是Linux和Unix-like系統中用于創建目錄的基本命令,全稱為"make directory"。下面將詳細介紹這個命令的用法、選項和實際應用。
目錄
一、基本語法
二、基本用法
創建單個目錄
創建多個目錄
三、常用選項
-p?或?--parents
-m?或?--mode
-v?或?--verbose
四、高級用法
創建帶有空格或特殊字符的目錄
結合大括號擴展創建多個相似目錄
在腳本中使用mkdir
五、實際應用示例
創建項目目錄結構
創建帶權限的目錄
創建多層目錄并顯示詳細信息
六、注意事項
默認情況下,如果目錄已存在,mkdir會報錯
普通用戶只能在有寫權限的目錄中創建子目錄
使用-p選項時,如果路徑中某些組件已存在且不是目錄,會報錯
目錄名區分大小寫
七、查看幫助
一、基本語法
mkdir [選項] 目錄名...
二、基本用法
-
創建單個目錄
mkdir dirname
這會在當前工作目錄下創建一個名為
dirname
的新目錄。 -
創建多個目錄
mkdir dir1 dir2 dir3
這會同時創建三個目錄:dir1、dir2和dir3。
三、常用選項
-
-p
?或?--parents
-
遞歸創建目錄,即如果上級目錄不存在則一并創建
-
不會報錯如果目錄已存在
mkdir -p path/to/new/directory
????????這個命令會創建完整的目錄路徑(注意:此處的路徑也可以是相對路徑。),即使中間的
path
和to
目錄不存在。(我們可以使用ls
?命令的?-R
?選項(遞歸列出目錄內容)用于?遞歸顯示目錄及其所有子目錄中的文件,即不僅顯示當前目錄下的文件,還會深入遍歷所有子目錄并列出它們的內容。) -
-
-m
?或?--mode
-
設置目錄的權限模式(類似chmod)
mkdir -m 755 restricted_dir
這會創建一個權限為755(rwxr-xr-x)的目錄(第一列數據表示為文件類型和相關權限,關于權限相關知識會在后面講解)。
-
-
-v
?或?--verbose
-
顯示每個創建的目錄信息
mkdir -v newdir
輸出示例:
-
四、高級用法
-
創建帶有空格或特殊字符的目錄
mkdir "my directory"
或者使用轉義字符:
mkdir my\ directory
-
結合大括號擴展創建多個相似目錄
mkdir dir_{1..5}
這會創建dir_1, dir_2, ..., dir_5五個目錄。
-
在腳本中使用mkdir
if [ ! -d "./path/to/dir" ]; thenmkdir -p "./path/to/dir" fi
這個腳本片段會先檢查目錄是否存在,若存在就什么都不做,而不存在才創建。因為之前有一個path目錄,我們就進去觀察新建目錄的變化。
五、實際應用示例
-
創建項目目錄結構
mkdir -p project/{src,doc,bin,lib,test}
這會創建一個project目錄,并在其中創建src, doc, bin, lib, test五個子目錄。
-
創建帶權限的目錄
mkdir -m 700 private_dir
創建一個只有所有者有完全權限的目錄。
-
創建多層目錄并顯示詳細信息
mkdir -pv backup/2023/{jan,feb,mar}/images
這會創建完整的目錄結構并顯示每個創建步驟。如果看不懂花括號的意思,下面解釋一下:
六、注意事項
-
默認情況下,如果目錄已存在,
mkdir
會報錯 -
普通用戶只能在有寫權限的目錄中創建子目錄
-
使用
-p
選項時,如果路徑中某些組件已存在且不是目錄,會報錯 -
目錄名區分大小寫
七、查看幫助
要了解更多關于mkdir
的信息,可以使用:
man mkdir
使用該指令后,則進入使用手冊:?
?或
mkdir --help