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

命令簡介:文件和目錄管理的基本Linux命令

運維 系統(tǒng)運維
21世紀的第一個十年就這樣過去了,在這期間Linux越來越受到廣大用戶的接受,這里將介紹文件和目錄管理的基本Linux命令,在這里拿出來和大家分享一下。本文將幫助您掌握有關(guān)文件和目錄管理的基本Linux命令。

21世紀的***個十年就這樣過去了,在這期間Linux越來越受到廣大用戶的接受,這里將介紹文件和目錄管理的基本Linux命令,在這里拿出來和大家分享一下。本文將幫助您掌握有關(guān)文件和目錄管理的基本Linux命令。您將學習:

列出目錄內(nèi)容

復制、移動或刪除文件和目錄
重復操作多個文件和目錄
使用通配符模式操作文件
使用 find 命令,根據(jù)類型、大小或時間查找和操作文件
使用 gzip 和 bzip2 壓縮和解壓縮文件
使用 tar、cpio 和 dd 歸檔文件
本文幫助您準備 Linux Professional Institute Junior Level Administration (LPIC-1) 考試 101 中主題 103 下的目標 103.2。該目標的權(quán)值為 4。

列出目錄

Linux 和 UNIX® 系統(tǒng)中的所有文件都可以作為一個大型樹型文件系統(tǒng)的一部分訪問,這個樹型文件系統(tǒng)的根為 /。通過掛載 分支可以將它們添加到樹中,通過解除掛載 可以移除它們。掛載和解除掛載的內(nèi)容將在掛載和解除掛載文件系統(tǒng) 一文介紹。 (參見 學習 Linux,101:LPIC-1 路線圖)。

列出目錄條目

在本文中,我們將使用 “學習 Linux,101:文本流和過濾器” 一文中創(chuàng)建的文件來練習命令。如果您完成了上篇文章的練習,那么您應該在您的主目錄中創(chuàng)建了一個目錄 lpi103-2。如果還沒有的話,那么可以使用系統(tǒng)中的另一個目錄來練習本文討論的命令。

文件和目錄名可以是絕對 的,這表示名稱以 / 開頭,也可以相對 于當前工作目錄,這表示不是以 / 開頭。文件或目錄的絕對路徑的組成為:在 0 個或多個目錄名后附加一個 /,其中每個目錄名的后面都有一個 /,然后是一個最終文件名。至于相對于當前工作目錄的文件或目錄名,只需要將工作目錄的絕對名、/ 和相對名連接在一起。例如,我們在早期文章中在我的主目錄 /home/ian 中創(chuàng)建的目錄 lpi103-2,它的完整(即絕對)路徑為 /home/ian/lpi103-2。您可以使用 pwd 命令顯示當前工作目錄的名稱。此命令通常也可以用于 PWD 環(huán)境變量。清單 1 展示了 pwd 命令的使用,以及通過三種不同的方法使用 ls 命令列出此目錄中的文件。


清單 1. 列出目錄條目

  1. [ian@echidna lpi103-2]$ pwd  
  2. /home/ian/lpi103-2  
  3. [ian@echidna lpi103-2]$ echo "$PWD"  
  4. /home/ian/lpi103-2  
  5. [ian@echidna lpi103-2]$ ls  
  6. sedtab  text1  text2  text3  text4  text5  text6  xaa  xab  yaa  yab  
  7. [ian@echidna lpi103-2]$ ls "$PWD"  
  8. sedtab  text1  text2  text3  text4  text5  text6  xaa  xab  yaa  yab  
  9. [ian@echidna lpi103-2]$ ls /home/ian/lpi103-2  
  10. sedtab  text1  text2  text3  text4  text5  text6  xaa  xab  yaa  yab 

可以看到,您可以將一個相對或絕對目錄名作為 ls 目錄的參數(shù),它將列出該目錄中的內(nèi)容。

列出詳細內(nèi)容

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

默認情況下,ls 命令不會列出特殊文件,這些文件的文件名以點號 (.) 開頭。除根目錄外的所有目錄都至少包含兩個特殊條目:目錄本身 (.) 和父目錄 (..)。根目錄沒有父目錄。 清單 2 使用 -l 和 -a 選項顯示所有文件的長格式的列表,包括 . 和 .. 目錄條目。


清單 2. 顯示一個長目錄列表

  1. [ian@echidna lpi103-2]$ ls -al  
  2. total 52  
  3. drwxrwxr-x.  2 ian ian 4096 2009-08-11 21:21 .  
  4. drwx------. 35 ian ian 4096 2009-08-12 10:55 ..  
  5. -rw-rw-r--.  1 ian ian    8 2009-08-11 21:17 sedtab  
  6. -rw-rw-r--.  1 ian ian   24 2009-08-11 14:02 text1  
  7. -rw-rw-r--.  1 ian ian   25 2009-08-11 14:27 text2  
  8. -rw-rw-r--.  1 ian ian   63 2009-08-11 15:41 text3  
  9. -rw-rw-r--.  1 ian ian   26 2009-08-11 15:42 text4  
  10. -rw-rw-r--.  1 ian ian   24 2009-08-11 18:47 text5  
  11. -rw-rw-r--.  1 ian ian   98 2009-08-11 21:21 text6  
  12. -rw-rw-r--.  1 ian ian   15 2009-08-11 14:41 xaa  
  13. -rw-rw-r--.  1 ian ian    9 2009-08-11 14:41 xab  
  14. -rw-rw-r--.  1 ian ian   17 2009-08-11 14:41 yaa  
  15. -rw-rw-r--.  1 ian ian    8 2009-08-11 14:41 yab 

在清單 2 中,***行顯示所列文件使用的磁盤塊的總數(shù)(52)。其余行列出了目錄的條目。

***個字段(本例中為 drwxrwxr-x 或 -rw-rw-r--)告訴我們,文件是一個目錄 (d) 還是一個普通文件 (-)。對于特殊文件,還會看到符號鏈接 (l) 或其他值(例如 /dev 文件系統(tǒng)中的文件)。您將在創(chuàng)建和修改硬鏈接和符號鏈接 一文(參見 學習 Linux,101:LPIC-1 路線圖)中了解到有關(guān)符號鏈接的更多內(nèi)容。類型之后是針對所有者、所有者所在組的成員、每一個成員的三組特權(quán)。這三個值分別表示用戶、組、組成員是否擁有讀 (r)、寫 (w) 或 (x) 執(zhí)行權(quán)限。諸如 setuid 之類的用戶將在管理文件權(quán)限和所有權(quán)(參見 學習 Linux,101:LPIC-1 路線圖)一文中介紹。

下一個字段是一個數(shù)字,告訴我們文件的硬鏈接 的數(shù)量。我們已經(jīng)介紹過,inode 包含有關(guān)文件的信息。文件的目錄條目包含到文件的 inode 的硬鏈接(或指針),因此列出的每個條目都應該至少擁有一個硬鏈接。目錄條目對 . 條目和每個子目錄條目使用另外的硬鏈接。因此我們可以從清單 2 中可以看到,使用 .. 表示的主目錄有大量子目錄,因此包含 35 個硬鏈接。 接下來兩個字段分別為文件的所有者和所有者的主組。某些系統(tǒng),例如 Red Hat 或 Fedora 系統(tǒng),在默認情況下為每個用戶提供單獨的組。在其他系統(tǒng)中,所有用戶可能位于一個或多個組中。

下一個字段包含文件的長度,以字節(jié)為單位。
倒數(shù)第二個字段包含***一次修改的時間戳。
***一個字段包含文件或目錄的名稱。

ls 命令的 -i 選項將顯示 inode 號。您將在本文后面以及 創(chuàng)建和修改硬鏈接和符號鏈接(參見 學習 Linux,101:LPIC-1 路線圖)中再次見到有關(guān) inode 的介紹。

多個文件

您還可以為 ls 命令指定多個參數(shù),其中的每個名稱都可能是文件或目錄的名稱。對于目錄名,ls 命令將列出目錄的內(nèi)容,而不是關(guān)于目錄本身的信息。在我們的示例中,假設當在父目錄中列出目錄時,我們希望獲得有關(guān) lpi103-2 目錄條目本身的信息。命令 ls -l ../lpi103-2 將提供類似前例的列表。清單 3 將展示如何添加 -d 選項以列出有關(guān)目錄條目的信息,而不是目錄的內(nèi)容,以及如何列出多個文件或目錄的條目。

清單 3. 使用 ls -d

  1. [ian@echidna lpi103-2]$ ls -ld ../lpi103-2 sedtab xaa  
  2. drwxrwxr-x. 2 ian ian 4096 2009-08-12 15:31 ../lpi103-2  
  3. -rw-rw-r--. 1 ian ian    8 2009-08-11 21:17 sedtab  
  4. -rw-rw-r--. 1 ian ian   15 2009-08-11 14:41 xaa 

注意,lpi103-2 的修改時間不同于前一個列表中的修改時間。同樣,和前一個列表相同,它與該目錄中的任何文件的時間戳都不同。這是否就是您所期望的?并不是這樣。然而,在撰寫本文時,我創(chuàng)建了一些額外的的例子并刪除了它們,因此目錄時間戳反映了這一更改。稍后在 處理多個文件和目錄 中,我們將更詳細地討論文件時間。

對輸出排序

默認情況下,ls 將按字母順序列出文件。可以使用多種選項對輸出進行排序。例如,ls -t 將按照修改時間排序(從***到最舊),而 ls -lS 將生成一個按大小排序的長列表(從***到最?。L砑?-r 將反向排序。例如,使用 ls -lrt 生成一個按從最舊到***排序的長列表。參考手冊頁面,了解有關(guān)排列文件和目錄的其他方式。

復制、移動和刪除文件

我們現(xiàn)在已經(jīng)了解了一些創(chuàng)建文件的方法,但是假設我們希望復制文件、重命名文件、在文件系統(tǒng)層級結(jié)構(gòu)中移動文件,甚至刪除它們。我們使用三個簡短的命令來實現(xiàn)這些目的。

cp
用于復制一個或多個文件或目錄。您必須提供一個(或多個)源 名和一個目標 名。源名或目標名可能包含一個路徑說明。如果目標是一個現(xiàn)有目錄,那么所有源將被復制到目標中。如果目錄是一個不存在的目錄,那么(單一)源也必須為一個目錄,并且源目錄的副本及其內(nèi)容使用目標名作為新名稱。如果目標是一個文件,那么(單一)源必須也為文件,而源文件的副本使用目標名作為新名,替換任何現(xiàn)有的具有相同名稱的文件。注意,在 DOS 和 Windows 操作系統(tǒng)中,不會做出目標為當前目錄的默認假設。

mv
用于移動 或重命名 一個或多個文件或目錄。一般來說,您使用的名稱將遵守與 cp 相同的規(guī)則;您可以重命名某個文件或?qū)⒁唤M文件移動到一個新目錄中。由于名稱只是一個鏈接到某個 inode 的目錄條目,因此 inode 號只有在文件被移動到另一個文件系統(tǒng)才會發(fā)生更改就不足為怪了,在這種情況下,移動文件看上去就類似于在復制文件之后刪除它。

rm
用于刪除 一個或多個文件。以上文章就是介紹有關(guān)文件和目錄管理的基本Linux命令。

【編輯推薦】

  1. 如何進入linux單用戶模式修改root密碼
  2. Ubuntu Linux系統(tǒng)的分區(qū)方案
  3. Linux常用軟件包的安裝 外設掛載 磁盤管理
  4. Linux Bash下如何實現(xiàn)快捷鍵效果
  5. 全面講解Linux安全設定
責任編輯:小霞 來源: 計世網(wǎng)
相關(guān)推薦

2021-12-13 12:00:08

FreeDOSLinux

2021-02-19 08:05:38

Linux命令系統(tǒng)

2010-05-04 15:09:29

Unix命令

2014-03-17 10:27:08

Linux cp備份

2010-01-11 10:05:18

Linux刪除目錄

2009-08-11 10:30:00

linux中du命令參linux命令行參數(shù)linux命令行

2011-07-12 15:18:01

SQLite數(shù)據(jù)庫引擎

2010-02-03 11:01:26

Linux mount

2015-06-08 16:42:52

linux運維

2021-12-12 09:19:16

find命令Linux

2012-05-11 10:26:09

Linuxcdalias

2009-07-31 16:14:27

linux cd命令Linux基本命令

2017-03-01 16:08:50

Linux文件管理命令

2019-09-29 13:01:35

chgrpnewgrpLinux

2013-04-10 13:28:52

Linux命令

2010-04-21 09:12:15

Unix基本命令

2009-07-31 17:21:28

linux cd命令linux cd命令詳Pushd

2010-02-04 10:11:05

Linux mount

2011-01-05 10:30:42

活動目錄Powershell

2019-06-19 09:00:00

GitLinux開源
點贊
收藏

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