mkdir是一個用于創(chuàng)建目錄(目錄樹)的?Unix?和?Linux?命令,?-p?選項允許創(chuàng)建一個目錄和它不存在的父目錄,這篇文章主要介紹了Linux中的mkdir?-p,需要的朋友可以參考下
mkdir?
是一個用于創(chuàng)建目錄(目錄樹)的 Unix 和 Linux 命令。?-p?
選項允許創(chuàng)建一個目錄和它不存在的父目錄。換句話說,?-p?
選項確保了指定的整個目錄路徑都會被創(chuàng)建。文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
基礎用法
如果你只是運行?mkdir new_directory?
,這個命令會嘗試在當前目錄中創(chuàng)建一個叫做?new_directory?
的新目錄。如果當前目錄中已經(jīng)有一個同名目錄,或者由于某些其他原因(例如權限問題)導致目錄不能被創(chuàng)建,該命令會失敗。文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
-p?
選項的用途文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
當使用?-p?
選項時,?mkdir?
會嘗試創(chuàng)建所有指定的父目錄,并不會因為這些目錄已經(jīng)存在而出錯。文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
例如:文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
1 | mkdir -p dir1 /dir2/dir3/dir4 |
這個命令會創(chuàng)建一個?dir4?
目錄,并確保它的父目錄?dir3?
、?dir2?
和?dir1?
也存在。如果這些目錄中的任何一個不存在,?mkdir?
會創(chuàng)建它。文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
錯誤處理
如果目錄已經(jīng)存在,使用?-p?
選項的?mkdir?
命令不會報錯,它會靜默地成功。這在腳本中是非常有用的,因為可能不確定目錄是否已經(jīng)存在,但需要確保它存在以便進行其他操作。文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
權限
mkdir -p?
也會考慮到文件系統(tǒng)的權限。如果沒有足夠的權限創(chuàng)建目錄,該命令會失敗并返回一個非零的退出狀態(tài)。文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
示例文章源自四五設計網(wǎng)-http://www.wasochina.com/39151.html
假設想在一個嵌套的目錄結構中存儲一些文件,路徑如?./files/images/jpg?
。可以使用以下命令一次性創(chuàng)建所有需要的目錄:
1 | mkdir -p files /images/jpg |
如果?files?
、?files/images?
或?files/images/jpg?
任何一個目錄已經(jīng)存在,該命令都會成功,并確保完整的目錄路徑被創(chuàng)建。


評論