Linux 命令mkdir詳細(xì)教程
Linuxmkdir命令詳細(xì)教程
一、mkdir命令的基本功能
mkdir
(Make Directory)是 Linux 系統(tǒng)中用于創(chuàng)建新目錄(文件夾)的基礎(chǔ)命令。- 它支持一次性創(chuàng)建單個或多個目錄,以及遞歸創(chuàng)建多層目錄結(jié)構(gòu),是文件系統(tǒng)操作中最常用的命令之一。
- 資料已經(jīng)分類整理好:
https://pan.quark.cn/s/26d73f7dd8a7
二、mkdir命令的語法格式
mkdir [選項] 目錄名 [目錄名...]
- 常用選項:
-p
(–parents):遞歸創(chuàng)建目錄,若父目錄不存在則自動創(chuàng)建。-m
(–mode):創(chuàng)建目錄時指定權(quán)限(如-m 755
)。-v
(–verbose):顯示創(chuàng)建目錄的詳細(xì)過程。--help
:顯示命令幫助信息。--version
:顯示命令版本信息。
三、mkdir命令的使用場景與示例
1. 創(chuàng)建單個目錄
# 示例1:在當(dāng)前目錄創(chuàng)建名為 "test" 的目錄 mkdir test # 示例2:在指定路徑創(chuàng)建目錄(需確保父目錄存在) mkdir /home/user/project/data
- 輸出:無提示,若目錄已存在則報錯
mkdir: 無法創(chuàng)建目錄‘test’:文件已存在
。
2. 遞歸創(chuàng)建多層目錄(-p
選項)
# 場景:創(chuàng)建目錄樹 "project/src/main/java",若父目錄不存在則自動創(chuàng)建 mkdir -p project/src/main/java # 等價于依次執(zhí)行: # mkdir project # mkdir project/src # mkdir project/src/main # mkdir project/src/main/java
- 說明:
-p
選項避免了手動逐層創(chuàng)建目錄的繁瑣,尤其適合構(gòu)建項目結(jié)構(gòu)。
3. 創(chuàng)建目錄時指定權(quán)限(-m
選項)
# 示例1:創(chuàng)建目錄并設(shè)置權(quán)限為 755(所有者可讀可寫可執(zhí)行,其他用戶可讀可執(zhí)行) mkdir -m 755 logs # 示例2:創(chuàng)建目錄并設(shè)置權(quán)限為 644(所有者可讀可寫,其他用戶可讀) mkdir -m 644 documents
- 權(quán)限說明:權(quán)限值用三位八進(jìn)制數(shù)表示,每位對應(yīng)
所有者
、組
、其他用戶
的權(quán)限(r=4
,w=2
,x=1
)。
4. 一次性創(chuàng)建多個目錄
# 示例:同時創(chuàng)建 "src"、"docs"、"test" 三個目錄 mkdir src docs test # 結(jié)合 -p 遞歸創(chuàng)建多個目錄樹 mkdir -p project/{src,docs,test}/img
- 說明:使用大括號
{}
可簡化多個目錄的創(chuàng)建(需 shell 支持,如 bash)。
5. 顯示創(chuàng)建過程(-v
選項)
mkdir -v new_dir # 輸出:創(chuàng)建目錄 "new_dir"
- 場景:當(dāng)批量創(chuàng)建目錄時,通過
-v
確認(rèn)操作是否成功。
四、mkdir命令的權(quán)限與安全注意事項
權(quán)限限制:
- 只能在有權(quán)限的目錄下創(chuàng)建新目錄(通常需要對父目錄有
w
權(quán)限)。 - 根目錄(
/
)下創(chuàng)建目錄需使用sudo
:sudo mkdir /data/backup
- 只能在有權(quán)限的目錄下創(chuàng)建新目錄(通常需要對父目錄有
默認(rèn)權(quán)限與 umask:
- 新創(chuàng)建目錄的默認(rèn)權(quán)限由
umask
決定(默認(rèn)022
),實際權(quán)限為777 - umask
。 - 示例:若
umask
為022
,則默認(rèn)權(quán)限為755
(rwxr-xr-x
)。 - 查看當(dāng)前
umask
:umask
,臨時修改:umask 077
(修改后新目錄權(quán)限為700
)。
- 新創(chuàng)建目錄的默認(rèn)權(quán)限由
避免同名文件沖突:
- 若目錄名與已有文件重名,
mkdir
會報錯,需先刪除文件或重命名。
- 若目錄名與已有文件重名,
五、高級用法:結(jié)合其他命令使用
與
touch
配合創(chuàng)建項目文件結(jié)構(gòu):mkdir -p project/{src,docs,test} touch project/src/main.py project/test/test.py
在腳本中動態(tài)創(chuàng)建目錄:
# 腳本示例:根據(jù)日期創(chuàng)建備份目錄 DATE=$(date +%Y%m%d) mkdir -p backups/$DATE cp important.file backups/$DATE/
使用通配符創(chuàng)建批量目錄:
# 創(chuàng)建以月份命名的目錄:month_01, month_02, ..., month_12 mkdir month_{01..12}
六、常見錯誤與解決方案
錯誤信息 | 原因 | 解決方案 |
---|---|---|
mkdir: 無法創(chuàng)建目錄‘dir’:權(quán)限不夠 | 無父目錄寫入權(quán)限 | 使用 sudo 或切換到有權(quán)限的用戶 |
mkdir: 無法創(chuàng)建目錄‘dir’:文件已存在 | 同名文件或目錄已存在 | 重命名目錄或刪除已有文件 |
mkdir: 無法創(chuàng)建目錄‘/path/to/dir’:沒有那個文件或目錄 | 父目錄不存在且未用 -p | 添加 -p 選項遞歸創(chuàng)建 |
七、擴(kuò)展:創(chuàng)建目錄的其他方式
使用
cp
命令復(fù)制目錄結(jié)構(gòu):cp -r template_dir new_project # 復(fù)制目錄及其內(nèi)容
使用
tree
命令查看目錄結(jié)構(gòu)(需先安裝):sudo apt install tree # Debian/Ubuntu tree project # 查看 project 目錄的層級結(jié)構(gòu)
八、總結(jié)
mkdir
命令是 Linux 文件操作的基礎(chǔ),熟練掌握 -p
和 -m
選項可大幅提升目錄管理效率。在實際使用中,建議:
- 復(fù)雜目錄結(jié)構(gòu)優(yōu)先使用
-p
遞歸創(chuàng)建; - 重要目錄通過
-m
顯式設(shè)置權(quán)限; - 結(jié)合通配符、腳本實現(xiàn)批量操作。
通過合理使用mkdir
,可高效構(gòu)建項目目錄、管理文件結(jié)構(gòu),避免因路徑或權(quán)限問題導(dǎo)致的操作失誤。
到此這篇關(guān)于Linux 命令mkdir的文章就介紹到這了,更多相關(guān)Linux 命令mkdir內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
linux shell中“.” 和 “./”執(zhí)行的區(qū)別詳解
這篇文章主要介紹了linux shell中“.” 和 “./”執(zhí)行的區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05統(tǒng)計 cpu 內(nèi)存 使用率的shell腳本代碼
統(tǒng)計 cpu 內(nèi)存使用率的腳本,有需要的朋友可以參考下2013-02-02Linux BASH多進(jìn)程并行處理的方法實現(xiàn)
Linux下BASH多進(jìn)程并行處理的實現(xiàn)代碼,需要的朋友可以參考下2013-01-01shell?數(shù)組?${array[@]}?${array[*]}的使用及區(qū)別解析
shell中用括號來表示數(shù)組,數(shù)組元素間使用空格隔開,這篇文章主要介紹了shell?數(shù)組?${array[@]}?${array[*]}的使用及區(qū)別,需要的朋友可以參考下2023-06-06