如何在 Linux 中使用 mkdir 命令創(chuàng)建目錄

yanding 2023-07-17 410

摘要:在本指南中,我們將了解用于創(chuàng)建目錄的 mkdir 命令。我們還將討論一些最佳示例,幫助初學(xué)者自信地運(yùn)行 Linux 操作系統(tǒng)。


作為 Linux 用戶,我們經(jīng)常使用文件和目錄。文件使我們能夠存儲(chǔ)有價(jià)值的信息,而數(shù)據(jù)庫使我們能夠以正確的順序組織文件。除此之外,我們通常會(huì)創(chuàng)建一個(gè)分層的網(wǎng)頁布局,以正確的順序組織內(nèi)容。


在這篇適合初學(xué)者的文章中,我們將了解 mkdir 命令。顧名思義,mkdir 命令用于為給定路徑中的目錄創(chuàng)建一個(gè)名稱,這也允許我們一次創(chuàng)建一個(gè)或多個(gè)具有所需文件權(quán)限的目錄。


需要注意的是,要使用 mkdir 命令,用戶必須對(duì)父目錄具有必要的權(quán)限,否則該命令將失敗并出現(xiàn)權(quán)限被拒絕的錯(cuò)誤。


與其他 Linux 命令一樣,mkdir 命令的語法基本上分為兩類 - 選項(xiàng)和參數(shù):


$ mkdir [ 選項(xiàng) ] ... < 目錄 1 > < 目錄 2 > ...


在上面的字典中,方括號(hào)([])代表可選參數(shù),而方括號(hào)(<>)代表強(qiáng)制參數(shù)。


Linux 中 Mkdir 命令的一般用法

顧名思義,mkdir 是 \make directory 的縮寫形式。好處是,僅當(dāng)給定路徑上沒有相同格式的目錄或文件時(shí),它才會(huì)創(chuàng)建目錄。因此,這是一個(gè)非常安全的命令,并且不會(huì)損壞系統(tǒng)。


在本節(jié)中,我們將看到 mkdir 命令的基本用法和示例。


mkdir 命令的主要用途之一是在給定路徑中創(chuàng)建目錄名。因此,讓我們?cè)诋?dāng)前工作目錄中創(chuàng)建一個(gè)名為 rpm-distros 的目錄:


$ mkdir rpm-發(fā)行版

現(xiàn)在,使用 ls 命令驗(yàn)證該文件夾是否已創(chuàng)建:


$ ls -l

在第一個(gè)示例中,我們使用 mkdir 命令的相對(duì)路徑。但這個(gè)命令也支持全路徑。


我們可以使用pwd命令或pwd環(huán)境變量來查找當(dāng)前活動(dòng)目錄的完整路徑。


因此,讓我們使用完整路徑在當(dāng)前工作目錄中創(chuàng)建一個(gè)命名目錄 - deb-distros:


$mkdir $PWD/deb-distros

現(xiàn)在,檢查是否在當(dāng)前工作目錄中創(chuàng)建了新文件夾:


$ ls -l


mkdir 命令采用多個(gè)路徑作為參數(shù),允許我們一次性創(chuàng)建多個(gè)目錄。



讓我們使用一個(gè)命令在 deb-distros 目錄中創(chuàng)建三個(gè)目錄:


$ mkdir deb-distros/kali-deb-distros/mint deb-distros/ubuntu

現(xiàn)在,讓我們列出 deb-distros 文件夾的內(nèi)容:


$ ls -l deb-發(fā)行版

我們可以看到,mkdir 命令成功創(chuàng)建了幾個(gè)目錄。



在前面的示例中,我們了解了如何使用單個(gè)命令在另一個(gè)文件夾中創(chuàng)建多個(gè)文件夾。但是,這不是最好的方法,因?yàn)槲覀冎付烁肝募A(即 deb-distros)和任何子文件夾的名稱。


為了克服這個(gè)限制,我們可以在大括號(hào)擴(kuò)展中指定子目錄名稱,如下例所示,我們?cè)?rpm-distros 目錄中創(chuàng)建三個(gè)子目錄:


$mkdir rpm-distros/{soul,centos,fedora}

這里我們要注意以下兩點(diǎn):


(,)標(biāo)題兩邊沒有空格。

大括號(hào)擴(kuò)展功能僅在 Bash shell 中可用,因此此方法的可移植性較差。

現(xiàn)在,讓我們檢查是否已成功創(chuàng)建必要的數(shù)據(jù)庫配置:


$ ls -l rpm 發(fā)行版


在前面的部分中,我們了解了如何創(chuàng)建多個(gè)數(shù)據(jù)庫。但是,如果我們想創(chuàng)建嵌套目錄結(jié)構(gòu),這種方法就行不通了。在這種情況下,-p如有必要,我們可以使用創(chuàng)建父文件夾的命令選項(xiàng)。


讓我們創(chuàng)建一個(gè)嵌套的子目錄結(jié)構(gòu):


$ mkdir -p rpm-distros/centos/8.x/8.1/8.1-1911


現(xiàn)在,遞歸驗(yàn)證 rpm-distros/centos 目錄的內(nèi)容:


$ ls -1R rpm-發(fā)行版/分


正如我們所看到的,該命令執(zhí)行了必要的庫配置,而沒有向現(xiàn)有的父庫報(bào)告錯(cuò)誤。這個(gè)選項(xiàng)在編寫 shell 腳本時(shí)非常有用。我們可以使用它來防止由于現(xiàn)有庫而可能出現(xiàn)的庫創(chuàng)建錯(cuò)誤。


有時(shí)我們需要在創(chuàng)建文件夾后立即更改其訪問權(quán)限。在這種情況下,我們必須使用兩個(gè)命令 - mkdir 和 chmod。但我們可以使用單個(gè)命令獲得相同的結(jié)果。


讓我們使用-m該選項(xiàng)來設(shè)置訪問存儲(chǔ)庫的權(quán)限:


$ mkdir -m 777 dir-1

在本例中,我們使用數(shù)字格式來設(shè)置訪問權(quán)限。同樣的,我們可以利用文本的結(jié)構(gòu)。


例如,我們可以使用以下命令得到相同的結(jié)果:


$mkdir -ma=rwx dir-2

現(xiàn)在,使用 ls 命令確定文件夾的訪問權(quán)限:


$ls-ld dir-2 | $ls-ld dir-2 awk '{打印$1}'


默認(rèn)情況下,創(chuàng)建文件夾后,mkdir 命令不會(huì)在終端上打印任何內(nèi)容。到目前為止,我們一直在使用 ls 命令來檢查該文件夾是否已創(chuàng)建。


為了克服這個(gè)限制,我們可以使用命令的表達(dá)形式,為每個(gè)創(chuàng)建的庫打印一條消息。當(dāng)我們將其與選項(xiàng)結(jié)合使用時(shí),此選項(xiàng)提供了有意義的信息–p:


讓我們使用-v選項(xiàng)和命令來啟用詳細(xì)模式:


$mkdir -p -v dir-1/dir-2/dir-3/dir-4/dir-5

現(xiàn)在,讓我們看看命令的輸出:



在本文中,我們將了解 mkdir 命令的基本用法。首先,我們了解了如何創(chuàng)建單個(gè)數(shù)據(jù)庫以及多個(gè)數(shù)據(jù)庫。接下來,我們了解了如何在執(zhí)行此操作時(shí)設(shè)置文件夾的權(quán)限。最后,我們了解了如何使用詳細(xì)模式驗(yàn)證目錄創(chuàng)建。


您知道 Linux 中 mkdir 命令的其他最佳示例嗎?請(qǐng)?jiān)谙旅娴脑u(píng)論中告訴我們您的看法。

言鼎科技

The End