26 文件和目錄管理

絕對路徑和相對路徑

文件和目錄名可以是絕對的频蛔,這表示名稱以 / 開頭。
也可以相對當前工作目錄,這表示不是以 / 開頭蛤织。

文件或目錄的絕對路徑的組成為:
在 0 個或多個目錄名后附加一個 /艺挪,其中每個目錄名的后面都有一個 /不翩,然后是一個最終文件名。

列出詳細內(nèi)容

在一臺存儲設備中麻裳,文件或目錄被包含到一個塊(block)組合中口蝠。有關文件的信息被包含在一個索引節(jié)點(inode)中,其中記錄如下信息:所有者津坑、最后一次訪問文件的時間妙蔗、文件大小、是否為目錄以及誰可以讀取或?qū)懭霐?shù)據(jù)疆瑰。inode 編號也被稱為文件序列號(file serial number)眉反,并且在一個特定文件系統(tǒng)中是唯一的。我們可以使用-l
(或--format=long
)選項來顯示存儲在 inode 中的某些信息穆役。

默認情況下寸五,ls 命令不會列出特殊文件,這些文件的文件名以點號 (.) 開頭耿币。除根目錄外的所有目錄都至少包含兩個特殊條目:目錄本身 (.) 和父目錄 (..)梳杏。根目錄沒有父目錄。

[ian@echidna lpi103-2]$ ls -al
total 52
drwxrwxr-x. 2 ian ian 4096 2009-08-11 21:21 .
drwx------. 35 ian ian 4096 2009-08-12 10:55 ..
-rw-rw-r--. 1 ian ian 8 2009-08-11 21:17 sedtab
-rw-rw-r--. 1 ian ian 24 2009-08-11 14:02 text1
-rw-rw-r--. 1 ian ian 25 2009-08-11 14:27 text2
-rw-rw-r--. 1 ian ian 63 2009-08-11 15:41 text3
-rw-rw-r--. 1 ian ian 26 2009-08-11 15:42 text4
-rw-rw-r--. 1 ian ian 24 2009-08-11 18:47 text5
-rw-rw-r--. 1 ian ian 98 2009-08-11 21:21 text6
-rw-rw-r--. 1 ian ian 15 2009-08-11 14:41 xaa
-rw-rw-r--. 1 ian ian 9 2009-08-11 14:41 xab
-rw-rw-r--. 1 ian ian 17 2009-08-11 14:41 yaa
-rw-rw-r--. 1 ian ian 8 2009-08-11 14:41 yab
  • 第一個字段(本例中為 drwxrwxr-x 或 -rw-rw-r--)告訴我們淹接,文件是一個目錄 (d) 還是一個普通文件 (-)十性。類型之后是針對所有者、所有者所在組的成員塑悼、每一個成員的三組特權劲适。這三個值分別表示用戶、組厢蒜、組成員是否擁有讀 (r)霞势、寫 (w) 或 (x) 執(zhí)行權限烹植。

  • 下一個字段是一個數(shù)字,告訴我們文件的硬鏈接的數(shù)量支示。inode 包含有關文件的信息刊橘。文件的目錄條目包含到文件的 inode 的硬鏈接(或指針),因此列出的每個條目都應該至少擁有一個硬鏈接颂鸿。目錄條目對 . 條目和每個子目錄條目使用另外的硬鏈接促绵。使用 .. 表示的主目錄有大量子目錄,因此包含 35 個硬鏈接嘴纺。

  • 接下來兩個字段分別為文件的所有者和所有者的主組败晴。

  • 下一個字段包含文件的長度,以字節(jié)為單位栽渴〖饫ぃ可以通過增加h選項使得輸出的文件大小帶有單位。

  • 倒數(shù)第二個字段包含最后一次修改的時間戳闲擦。

  • 最后一個字段包含文件或目錄的名稱慢味。

  • ls -i 命令可以顯示 inode 號。
    ls -t 將按照修改時間排序(從最新到最舊)
    ls -lS 將生成一個按大小排序的長列表(從最大到最惺洹)纯路。添加-r
    將反向排序。

復制寞忿、移動和刪除文件

  • cp 用于復制一個或多個文件或目錄驰唬。您必須提供一個(或多個)名和一個目標名。源名或目標名可能包含一個路徑腔彰。
    說明:
  1. 如果目標是一個現(xiàn)有目錄叫编,那么所有源將被復制目標中。
  2. 如果目錄是一個不存在的目錄霹抛,那么(單一)源也必須為一個目錄搓逾,并且源目錄的副本及其內(nèi)容使用目標名作為新名稱。
  3. 如果目標是一個文件杯拐,那么(單一)源必須也為文件霞篡,而源文件的副本使用目標名作為新名,替換任何現(xiàn)有的具有相同名稱的文件藕施。
  • mv
    用于移動重命名一個或多個文件或目錄寇损。通常使用的名稱遵循使用cp 執(zhí)行復制的相同規(guī)則凸郑;可以重命名一個文件或?qū)⒁唤M文件移動到一個新目錄中裳食。因為名稱只是一個鏈接到 inode 的目錄條目,對 inode 數(shù)量沒有改變不應感到奇怪芙沥,除非該文件移動到另一個文件系統(tǒng)中诲祸,在這種情況下浊吏,移動它的行為更像在復制之后刪除原始文件。

  • rm 用于刪除一個或多個文件救氯。

下面是關于文件inode的一個實例:

ian@Z61t-u14:~/lpi103-2$ cp text1 text1.bkp
ian@Z61t-u14:~/lpi103-2$ mkdir backup
ian@Z61t-u14:~/lpi103-2$ cp text1 backup/text1.bkp.2
ian@Z61t-u14:~/lpi103-2$ ls -i text1 text1.bkp backup
787425 text1 787445 text1.bkp
backup:
787447 text1.bkp.2
ian@Z61t-u14:~/lpi103-2$ 
mv text1.bkp backup
ian@Z61t-u14:~/lpi103-2$ 
mv backup/text1.bkp backup/text1.bkp.1
ian@Z61t-u14:~/lpi103-2$ 
ls -i text1 text1.bkp backup
ls: cannot access text1.bkp: No such file or directory
787425 text1
backup:
787445 text1.bkp.1 787447 text1.bkp.2

通常找田,cp 命令會復制一個文件來覆蓋現(xiàn)有副本,只要現(xiàn)有文件是可寫的着憨。另一方面墩衙,如果目標存在,mv 就不會移動或重命名文件甲抖。

有一些與 cp 和mv 的這一行為相關的有用選項漆改。
**-f 或--force **
導致cp 嘗試刪除現(xiàn)有目標文件,即使該文件是不可寫的准谚。
**-i 或--interactive **
要求在嘗試替換現(xiàn)有文件之前進行確認挫剑。
**-b 或--backup **
對任何要替換的文件進行備份。

ian@Z61t-u14:~/lpi103-2$ cp text2 backup
ian@Z61t-u14:~/lpi103-2$ cp --backup=t text2 backup
ian@Z61t-u14:~/lpi103-2$ ls backup
text1.bkp.1 text1.bkp.2 text2 text2.~1~
ian@Z61t-u14:~/lpi103-2$ 
rm backup/text2 backup/text2.~1~
ian@Z61t-u14:~/lpi103-2$ ls backup
text1.bkp.1 text1.bkp.2

cp 命令默認情況下為新文件創(chuàng)建了一個新時間戳柱衔。所有者和組也被設置為執(zhí)行復制的用戶的所有者和組樊破。可以使用-p 選項保留選定的屬性唆铐。請注意哲戚,根用戶可能是唯一可以保留所有權的用戶。

創(chuàng)建和刪除目錄

  • Mkdir 創(chuàng)建目錄
    如果您想創(chuàng)建嵌套的子目錄或链,比如 d1/d2/d3惫恼,可能會失敗,因為 d1 和 d2 目錄不存在澳盐, 這個時候可以使用-p 選項來創(chuàng)建祈纯。
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市叼耙,隨后出現(xiàn)的幾起案子腕窥,更是在濱河造成了極大的恐慌,老刑警劉巖筛婉,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件簇爆,死亡現(xiàn)場離奇詭異,居然都是意外死亡爽撒,警方通過查閱死者的電腦和手機入蛆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來硕勿,“玉大人哨毁,你說我怎么就攤上這事≡次洌” “怎么了扼褪?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵想幻,是天一觀的道長。 經(jīng)常有香客問我话浇,道長脏毯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任幔崖,我火速辦了婚禮食店,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘赏寇。我一直安慰自己叛买,他們只是感情好,可當我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布蹋订。 她就那樣靜靜地躺著率挣,像睡著了一般。 火紅的嫁衣襯著肌膚如雪露戒。 梳的紋絲不亂的頭發(fā)上椒功,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天,我揣著相機與錄音智什,去河邊找鬼动漾。 笑死,一個胖子當著我的面吹牛荠锭,可吹牛的內(nèi)容都是我干的旱眯。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼证九,長吁一口氣:“原來是場噩夢啊……” “哼删豺!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起愧怜,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤呀页,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后拥坛,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蓬蝶,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年猜惋,在試婚紗的時候發(fā)現(xiàn)自己被綠了丸氛。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡著摔,死狀恐怖缓窜,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤雹洗,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站卧波,受9級特大地震影響时肿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜港粱,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一螃成、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧查坪,春花似錦寸宏、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至望忆,卻和暖如春罩阵,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背启摄。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工稿壁, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人歉备。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓傅是,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蕾羊。 傳聞我的和親對象是個殘疾皇子喧笔,可洞房花燭夜當晚...
    茶點故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內(nèi)容