自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在Linux上如何操作目錄 ?

系統(tǒng) Linux
讓我們繼續(xù)學(xué)習(xí)一下 Linux 文件系統(tǒng)的樹形結(jié)構(gòu),并展示一下如何在其中創(chuàng)建你的目錄。

[[245190]]

讓我們繼續(xù)學(xué)習(xí)一下 Linux 文件系統(tǒng)的樹形結(jié)構(gòu),并展示一下如何在其中創(chuàng)建你的目錄。

如果你不熟悉本系列(以及 Linux),請查看我們的第一部分。在那篇文章中,我們貫穿了 Linux 文件系統(tǒng)的樹狀結(jié)構(gòu)(或者更確切地說是文件層次結(jié)構(gòu)標(biāo)準(zhǔn)File Hierarchy Standard,F(xiàn)HS)。我建議你仔細(xì)閱讀,確保你理解自己能安全的做哪些操作。因?yàn)檫@一次,我將向你展示目錄操作的魅力。

 

新建目錄

在破壞之前,先讓我們來創(chuàng)建。首先,打開一個(gè)終端窗口并使用命令 mkdir 創(chuàng)建一個(gè)新目錄,如下所示:

  1. mkdir <directoryname>

如果你只輸入了目錄名稱,該目錄將顯示在您當(dāng)前所在目錄中。如果你剛剛打開一個(gè)終端,你當(dāng)前位置為你的家目錄。在這個(gè)例子中,我們展示了將要?jiǎng)?chuàng)建的目錄與你當(dāng)前所處位置的關(guān)系:

  1. $ pwd # 告知你當(dāng)前所在位置(參見第一部分)
  2. /home/<username>
  3. $ mkdir newdirectory # 創(chuàng)建 /home/<username>/newdirectory

(注:你不用輸入 后面的文本。# 后面的文本為注釋內(nèi)容,用于解釋發(fā)生了什么。它會(huì)被 shell 忽略,不會(huì)被執(zhí)行)。

你可以在當(dāng)前位置中已經(jīng)存在的某個(gè)目錄下創(chuàng)建新的目錄,方法是在命令行中指定它:

  1. mkdir Documents/Letters

這將在 Documents 目錄中創(chuàng)建 Letters 目錄。

你還可以在路徑中使用 .. 在當(dāng)前目錄的上一級目錄中創(chuàng)建目錄。假設(shè)你進(jìn)入剛剛創(chuàng)建的 Documents/Letters/ 目錄,并且想要?jiǎng)?chuàng)建Documents/Memos/ 目錄。你可以這樣做:

  1. cd Documents/Letters # 進(jìn)入到你剛剛創(chuàng)建的 Letters/ 目錄
  2. mkdir ../Memos

同樣,以上所有內(nèi)容都是相對于你當(dāng)前的位置做的。這就是使用了相對路徑。

你還可以使用目錄的絕對路徑:這意味著告訴 mkdir 命令將目錄放在和根目錄(/)有關(guān)的位置:

  1. mkdir /home/<username>/Documents/Letters

在上面的命令中將 <username> 更改為你的用戶名,這相當(dāng)于從你的主目錄執(zhí)行 mkdir Documents/Letters,通過使用絕對路徑你可以在目錄樹中的任何位置完成這項(xiàng)工作。

無論你使用相對路徑還是絕對路徑,只要命令成功執(zhí)行,mkdir 將靜默的創(chuàng)建新目錄,而沒有任何明顯的反饋。只有當(dāng)遇到某種問題時(shí),mkdir才會(huì)在你敲下回車鍵后打印一些反饋。

與大多數(shù)其他命令行工具一樣,mkdir 提供了幾個(gè)有趣的選項(xiàng)。 -p 選項(xiàng)特別有用,因?yàn)樗试S你嵌套創(chuàng)建目錄,即使目錄不存在也可以。例如,要在 Documents/ 中創(chuàng)建一個(gè)目錄存放寫給媽媽的信,你可以這樣做:

  1. mkdir -p Documents/Letters/Family/Mom

mkdir 會(huì)創(chuàng)建 Mom/ 之上的整個(gè)目錄分支,并且也會(huì)創(chuàng)建 Mom/ 目錄,無論其上的目錄在你敲入該命令時(shí)是否已經(jīng)存在。

你也可以用空格來分隔目錄名,來同時(shí)創(chuàng)建幾個(gè)目錄:

  1. mkdir Letters Memos Reports

這將在當(dāng)前目錄下創(chuàng)建目錄 Letters、MemosReports。

 

目錄名中可怕的空格

……這帶來了目錄名稱中關(guān)于空格的棘手問題。你能在目錄名中使用空格嗎?是的你可以。那么建議你使用空格嗎?不,絕對不建議??崭袷挂磺凶兊酶訌?fù)雜,并且可能是危險(xiǎn)的操作。

假設(shè)您要?jiǎng)?chuàng)建一個(gè)名為 letters mom/ 的目錄。如果你不知道如何更好處理,你可能會(huì)輸入:

  1. mkdir letters mom

但這是錯(cuò)誤的!錯(cuò)誤的!錯(cuò)誤的!正如我們在上面介紹的,這將創(chuàng)建兩個(gè)目錄 letters/mom/,而不是一個(gè)目錄 letters mom/

得承認(rèn)這是一個(gè)小麻煩:你所要做的就是刪除這兩個(gè)目錄并重新開始,這沒什么大不了。

可是等等!刪除目錄可是個(gè)危險(xiǎn)的操作。想象一下,你使用圖形工具DolphinNautilus 創(chuàng)建了目錄 letters mom/。如果你突然決定從終端刪除目錄 letters mom,并且您在同一目錄下有另一個(gè)名為 letters 的目錄,并且該目錄中包含重要的文檔,結(jié)果你為了刪除錯(cuò)誤的目錄嘗試了以下操作:

  1. rmdir letters mom

你將會(huì)有刪除目錄 letters 的風(fēng)險(xiǎn)。這里說“風(fēng)險(xiǎn)”,是因?yàn)樾疫\(yùn)的是rmdir 這條用于刪除目錄的指令,有一個(gè)內(nèi)置的安全措施,如果你試圖刪除一個(gè)非空目錄時(shí),它會(huì)發(fā)出警告。

但是,下面這個(gè):

  1. rm -Rf letters mom

(注:這是刪除目錄及其內(nèi)容的一種非常標(biāo)準(zhǔn)的方式)將完全刪除 letters/ 目錄,甚至永遠(yuǎn)不會(huì)告訴你剛剛發(fā)生了什么。)

rm 命令用于刪除文件和目錄。當(dāng)你將它與選項(xiàng) -R(遞歸刪除)和 -f(強(qiáng)制刪除)一起使用時(shí),它會(huì)深入到目錄及其子目錄中,刪除它們包含的所有文件,然后刪除子目錄本身,然后它將刪除所有頂層目錄中的文件,再然后是刪除目錄本身。

rm -Rf 是你必須非常小心處理的命令。

我的建議是,你可以使用下劃線來代替空格,但如果你仍然堅(jiān)持使用空格,有兩種方法可以使它們起作用。您可以使用單引號或雙引號,如下所示:

  1. mkdir 'letters mom'
  2. mkdir "letters dad"

或者,你可以轉(zhuǎn)義空格。有些字符對 shell 有特殊意義。正如你所見,空格用于在命令行上分隔選項(xiàng)和參數(shù)。 “分離選項(xiàng)和參數(shù)”屬于“特殊含義”范疇。當(dāng)你想讓 shell 忽略一個(gè)字符的特殊含義時(shí),你需要轉(zhuǎn)義,你可以在它前面放一個(gè)反斜杠(\)如:

  1. mkdir letters\ mom
  2. mkdir letter\ dad

還有其他特殊字符需要轉(zhuǎn)義,如撇號或單引號('),雙引號()和&符號():

  1. mkdir mom\ \&\ dad\'s\ letters

我知道你在想什么:如果反斜杠有一個(gè)特殊的含義(即告訴 shell 它必須轉(zhuǎn)義下一個(gè)字符),這也使它成為一個(gè)特殊的字符。然后,你將如何轉(zhuǎn)義轉(zhuǎn)義字符(\)?

事實(shí)證明,你轉(zhuǎn)義任何其他特殊字符都是同樣的方式:

  1. mkdir special\\characters

這將生成一個(gè)名為 special\characters/ 的目錄。

感覺困惑?當(dāng)然。這就是為什么你應(yīng)該避免在目錄名中使用特殊字符,包括空格。

以防誤操作你可以參考下面這個(gè)記錄特殊字符的列表。(LCTT 譯注:此處原文鏈接丟失。)

 

總結(jié)

  • 使用 mkdir <directory name> 創(chuàng)建新目錄。
  • 使用 rmdir <directory name> 刪除目錄(僅在目錄為空時(shí)才有效)。
  • 使用 rm -Rf <directory name> 來完全刪除目錄及其內(nèi)容 —— 請務(wù)必謹(jǐn)慎使用。
  • 使用相對路徑創(chuàng)建相對于當(dāng)前目錄的目錄: mkdir newdir
  • 使用絕對路徑創(chuàng)建相對于根目錄(/)的目錄: mkdir /home/<username>/newdir。
  • 使用 .. 在當(dāng)前目錄的上級目錄中創(chuàng)建目錄: mkdir ../newdir
  • 你可以通過在命令行上使用空格分隔目錄名來創(chuàng)建多個(gè)目錄: mkdir onedir twodir threedir。
  • 同時(shí)創(chuàng)建多個(gè)目錄時(shí),你可以混合使用相對路徑和絕對路徑: mkdir onedir twodir /home/<username>/threedir
  • 在目錄名稱中使用空格和特殊字符真的會(huì)讓你很頭疼,你最好不要那樣做。

有關(guān)更多信息,您可以查看 mkdir、rmdirrm 的手冊:

  1. man mkdir
  2. man rmdir
  3. man rm

要退出手冊頁,請按鍵盤 q 鍵。 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2019-03-14 14:30:48

SSHLinux特定目錄

2018-06-01 10:37:26

Linux歸檔文件壓縮文件

2017-05-10 15:16:29

Linux系統(tǒng)目錄讀寫指定目錄

2017-05-08 17:20:01

Linux指定目錄讀寫權(quán)限

2021-12-12 09:19:16

find命令Linux

2009-03-10 17:43:54

Linux操作系統(tǒng)磁盤陣列

2014-12-03 08:53:59

eCryptFS加密文件

2009-07-06 18:09:18

linuxApache密碼

2016-07-18 14:49:22

操作系統(tǒng)Linux終端操作

2011-01-11 14:17:29

Linux文件目錄

2016-02-16 09:36:37

CrossOverLinuxWindows

2022-06-30 13:54:16

BottlesLinuxWindows

2013-11-18 11:41:37

2011-06-15 18:38:17

Linux Qt Symbian

2019-12-05 10:30:17

LinuxMultitail

2011-03-22 10:06:27

LinuxZFS

2022-06-16 10:46:43

UbuntuLinux

2019-10-09 16:50:48

SSHLinux遠(yuǎn)程系統(tǒng)

2022-06-28 09:10:28

Linuxtree命令

2020-09-30 06:00:00

Linux誤刪除恢復(fù)文件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號