Linux mkdir
命令詳細教程
一、mkdir
命令的基本功能
mkdir
(Make Directory)是 Linux 系統中用于創建新目錄(文件夾)的基礎命令。- 它支持一次性創建單個或多個目錄,以及遞歸創建多層目錄結構,是文件系統操作中最常用的命令之一。
- 資料已經分類整理好:
https://pan.quark.cn/s/26d73f7dd8a7
二、mkdir
命令的語法格式
mkdir [選項] 目錄名 [目錄名...]
- 常用選項:
-p
(–parents):遞歸創建目錄,若父目錄不存在則自動創建。-m
(–mode):創建目錄時指定權限(如-m 755
)。-v
(–verbose):顯示創建目錄的詳細過程。--help
:顯示命令幫助信息。--version
:顯示命令版本信息。
三、mkdir
命令的使用場景與示例
1. 創建單個目錄
# 示例1:在當前目錄創建名為 "test" 的目錄
mkdir test # 示例2:在指定路徑創建目錄(需確保父目錄存在)
mkdir /home/user/project/data
- 輸出:無提示,若目錄已存在則報錯
mkdir: 無法創建目錄‘test’:文件已存在
。
2. 遞歸創建多層目錄(-p
選項)
# 場景:創建目錄樹 "project/src/main/java",若父目錄不存在則自動創建
mkdir -p project/src/main/java # 等價于依次執行:
# mkdir project
# mkdir project/src
# mkdir project/src/main
# mkdir project/src/main/java
- 說明:
-p
選項避免了手動逐層創建目錄的繁瑣,尤其適合構建項目結構。
3. 創建目錄時指定權限(-m
選項)
# 示例1:創建目錄并設置權限為 755(所有者可讀可寫可執行,其他用戶可讀可執行)
mkdir -m 755 logs # 示例2:創建目錄并設置權限為 644(所有者可讀可寫,其他用戶可讀)
mkdir -m 644 documents
- 權限說明:權限值用三位八進制數表示,每位對應
所有者
、組
、其他用戶
的權限(r=4
,w=2
,x=1
)。
4. 一次性創建多個目錄
# 示例:同時創建 "src"、"docs"、"test" 三個目錄
mkdir src docs test # 結合 -p 遞歸創建多個目錄樹
mkdir -p project/{src,docs,test}/img
- 說明:使用大括號
{}
可簡化多個目錄的創建(需 shell 支持,如 bash)。
5. 顯示創建過程(-v
選項)
mkdir -v new_dir
# 輸出:創建目錄 "new_dir"
- 場景:當批量創建目錄時,通過
-v
確認操作是否成功。
四、mkdir
命令的權限與安全注意事項
-
權限限制:
- 只能在有權限的目錄下創建新目錄(通常需要對父目錄有
w
權限)。 - 根目錄(
/
)下創建目錄需使用sudo
:sudo mkdir /data/backup
- 只能在有權限的目錄下創建新目錄(通常需要對父目錄有
-
默認權限與 umask:
- 新創建目錄的默認權限由
umask
決定(默認022
),實際權限為777 - umask
。 - 示例:若
umask
為022
,則默認權限為755
(rwxr-xr-x
)。 - 查看當前
umask
:umask
,臨時修改:umask 077
(修改后新目錄權限為700
)。
- 新創建目錄的默認權限由
-
避免同名文件沖突:
- 若目錄名與已有文件重名,
mkdir
會報錯,需先刪除文件或重命名。
- 若目錄名與已有文件重名,
五、高級用法:結合其他命令使用
-
與
touch
配合創建項目文件結構:mkdir -p project/{src,docs,test} touch project/src/main.py project/test/test.py
-
在腳本中動態創建目錄:
# 腳本示例:根據日期創建備份目錄 DATE=$(date +%Y%m%d) mkdir -p backups/$DATE cp important.file backups/$DATE/
-
使用通配符創建批量目錄:
# 創建以月份命名的目錄:month_01, month_02, ..., month_12 mkdir month_{01..12}
六、常見錯誤與解決方案
錯誤信息 | 原因 | 解決方案 |
---|---|---|
mkdir: 無法創建目錄‘dir’:權限不夠 | 無父目錄寫入權限 | 使用 sudo 或切換到有權限的用戶 |
mkdir: 無法創建目錄‘dir’:文件已存在 | 同名文件或目錄已存在 | 重命名目錄或刪除已有文件 |
mkdir: 無法創建目錄‘/path/to/dir’:沒有那個文件或目錄 | 父目錄不存在且未用 -p | 添加 -p 選項遞歸創建 |
七、擴展:創建目錄的其他方式
-
使用
cp
命令復制目錄結構:cp -r template_dir new_project # 復制目錄及其內容
-
使用
tree
命令查看目錄結構(需先安裝):sudo apt install tree # Debian/Ubuntu tree project # 查看 project 目錄的層級結構
八、總結
mkdir
命令是 Linux 文件操作的基礎,熟練掌握 -p
和 -m
選項可大幅提升目錄管理效率。在實際使用中,建議:
- 復雜目錄結構優先使用
-p
遞歸創建; - 重要目錄通過
-m
顯式設置權限; - 結合通配符、腳本實現批量操作。
通過合理使用mkdir
,可高效構建項目目錄、管理文件結構,避免因路徑或權限問題導致的操作失誤。