淺談Linux中的mkdir -p及基礎(chǔ)用法

  • A+
所屬分類:百科知識(shí)

mkdir是一個(gè)用于創(chuàng)建目錄(目錄樹(shù))的?Unix?和?Linux?命令,?-p?選項(xiàng)允許創(chuàng)建一個(gè)目錄和它不存在的父目錄,這篇文章主要介紹了Linux中的mkdir?-p,需要的朋友可以參考下

mkdir?是一個(gè)用于創(chuàng)建目錄(目錄樹(shù))的 Unix 和 Linux 命令。?-p?選項(xiàng)允許創(chuàng)建一個(gè)目錄和它不存在的父目錄。換句話說(shuō),?-p?選項(xiàng)確保了指定的整個(gè)目錄路徑都會(huì)被創(chuàng)建。

基礎(chǔ)用法

如果你只是運(yùn)行?mkdir new_directory?,這個(gè)命令會(huì)嘗試在當(dāng)前目錄中創(chuàng)建一個(gè)叫做?new_directory?的新目錄。如果當(dāng)前目錄中已經(jīng)有一個(gè)同名目錄,或者由于某些其他原因(例如權(quán)限問(wèn)題)導(dǎo)致目錄不能被創(chuàng)建,該命令會(huì)失敗。

-p?選項(xiàng)的用途

當(dāng)使用?-p?選項(xiàng)時(shí),?mkdir?會(huì)嘗試創(chuàng)建所有指定的父目錄,并不會(huì)因?yàn)檫@些目錄已經(jīng)存在而出錯(cuò)。

例如:

1
mkdir -p dir1/dir2/dir3/dir4

這個(gè)命令會(huì)創(chuàng)建一個(gè)?dir4?目錄,并確保它的父目錄?dir3?、?dir2?和?dir1?也存在。如果這些目錄中的任何一個(gè)不存在,?mkdir?會(huì)創(chuàng)建它。

錯(cuò)誤處理

如果目錄已經(jīng)存在,使用?-p?選項(xiàng)的?mkdir?命令不會(huì)報(bào)錯(cuò),它會(huì)靜默地成功。這在腳本中是非常有用的,因?yàn)榭赡懿淮_定目錄是否已經(jīng)存在,但需要確保它存在以便進(jìn)行其他操作。

權(quán)限

mkdir -p?也會(huì)考慮到文件系統(tǒng)的權(quán)限。如果沒(méi)有足夠的權(quán)限創(chuàng)建目錄,該命令會(huì)失敗并返回一個(gè)非零的退出狀態(tài)。

示例

假設(shè)想在一個(gè)嵌套的目錄結(jié)構(gòu)中存儲(chǔ)一些文件,路徑如?./files/images/jpg?。可以使用以下命令一次性創(chuàng)建所有需要的目錄:

1
mkdir -p files/images/jpg

如果?files?、?files/images?或?files/images/jpg?任何一個(gè)目錄已經(jīng)存在,該命令都會(huì)成功,并確保完整的目錄路徑被創(chuàng)建。

推薦應(yīng)用

發(fā)表評(píng)論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: