tft每日頭條

 > 科技

 > linux中的文件管理小結

linux中的文件管理小結

科技 更新时间:2024-11-25 23:28:25

本文是 i 春秋作家「xiehudie」表哥分享的技術文章,公衆号旨在為大家提供更多的學習方法與技能技巧,文章僅供學習參考。本套Linux進階教程共分為14章,歡迎大家前來系統學習。

前期回顧>>第1章:訪問命令行

linux中的文件管理小結(Linux進階教程第2章)1

第2章:從命令行管理文件

文件系統層次結構

Linux系統中的所有文件存儲在文件系統中。它們被組織到一個颠倒的目錄樹中,被稱為文件系統層次結構。這棵樹是颠倒的,因為樹根在該層次結構的頂部,樹根的下方延伸出目錄和子目錄的分支。

linux中的文件管理小結(Linux進階教程第2章)2

/目錄是根目錄,位于文件系統層次結構的頂部。/字符還用作文件名中的目錄分隔符。舉個例子,如果etc是/目錄的子目錄,我們就可以将該目錄指代為/etc。類似的,如果/etc目錄包含一個名字叫xxx的文件,我們也可以将該文件指代為/etc/xxx。

/的子目錄用于标準化的用途,以便我們根據文件和用途組織文件。這很方便我們查找文件。舉個例子:在根目錄中,子目錄/boot用于存儲啟動系統所需的文件。

下表是我根據名稱和用途列出的一些系統中最重要的目錄。

linux中的文件管理小結(Linux進階教程第2章)3

通過名稱指定文件

1、絕對路徑和相對路徑

文件或目錄的路徑指定其唯一的文件系統位置。跟随文件路徑會遍曆一個或多個指定的子目錄,用正斜杠(/)分隔,直到達到目标位置。目錄也稱為文件夾,包含其他文件和其他子目錄。它們的引用方式可以與文件相同。

注意:Linux文件名中可以接受空格字符作為其一部分。但是,shell也使用空格來分隔命令行上的選項和參數。如果我們輸入的命令中包含了名稱帶有空格的文件,則shell可能會誤解譯該命令,并認為我們要在空格處開始一個新文件名或其他參數。通過将文件名放在引号中可以避免這種情況,但如果我們并不需要在文件名中使用空格,直接避免使用空格更簡單。

2、絕對路徑

絕對路徑是一個完全限定的名稱,用于指定文件存在系統層次結構中的确切位置。它從(/)目錄開始,并指定為到達特定文件所必須遍曆的每個子目錄。文件系統中的每個文件都有一個唯一絕對路徑名,可通過一個簡單的規則識别:第一個字符是正斜杠(/)的路徑名是絕對路徑名。例如,系統消息日志文件的絕對路徑是/var/log/messages。絕對路徑寫入起來可能會太長,所有也可以通過相對于shell提示符當前工作目錄的位置來查找文件。

3、當前工作目錄和相對路徑

當用戶登錄并打開命令窗口時,初始位置通常是該用戶的主目錄。系統進程也有初始目錄,用戶和進程根據需要導航至其它目錄;術語工作目錄或當前工作目錄指它們的當前位置。

于絕對路徑一樣,相對路徑也标識唯一文件,僅指定從工作目錄到達該文件所需的路徑。識别相對路徑名遵循一個簡單規則:第一個字符是正斜杠之外的其他字符的路徑名是相對路徑名。位于/var目錄的用戶可以将消息日志文件指代為log/messages。

Linux文件系統,包含但不限于ext4、XFS、GFS2和GlusterFS,都是區分大小寫的。在同一目錄中創建FileCase.txt和filecase.txt将生成兩個不同的文件。

linux中的文件管理小結(Linux進階教程第2章)4

4、導航路徑

pwd命令顯示該shell的當前工作目錄的完整路徑名。這可以幫助我們确定使用相對路徑名來訪問文件的語法。ls命令列出指定目錄的目錄内容;如果未指定目錄,則列出當前工作目錄的内容。

linux中的文件管理小結(Linux進階教程第2章)5

使用cd命令可更改shell的當前工作目錄。如果沒有為該命令指定r任何參數,它将切換到我們的主目錄。(下圖是展示了cd命令混用路徑和更改shell的當前工作目錄)

linux中的文件管理小結(Linux進階教程第2章)6

touch該命令通常将文件的時間戳更新為當前日期和時間,而不進行其他修改。這通常可用于創建空文件夾,因為“觸碰”不存在的文件名而導緻會創建該文件。(如下圖所示)

linux中的文件管理小結(Linux進階教程第2章)7

ls命令具有多個選項,用于顯示文件的屬性。最常見且最有用的選項是-l(長列表格式)、-a(包含隐藏文件在内的所有文件),以及-R(遞歸方式,包含所有子目錄的内容)。(如下圖所示)

linux中的文件管理小結(Linux進階教程第2章)8

linux中的文件管理小結(Linux進階教程第2章)9

linux中的文件管理小結(Linux進階教程第2章)10

注意:開頭為句号(.)的文件名表示隐藏文件;在使用ls和其他命令時,我們無法在普通視圖中看到這些文件。這不是一種安全功能,而是隐藏文件用于防止必要的用戶配置文件讓主目錄淩亂不堪。許多命令僅通過特定的命令行選項處理隐藏文件,這樣可以預防一個用戶的配置被意外複制到其他目錄或其他用戶。要防止文件内容被不當查看,需要使用文件權限。

cd命令有許多選項,其中一些非常有用,比如cd– :可更改到用戶在進入當前目錄之前所處的目錄和cd .. :隐藏目錄上移一個級别,進入其父目錄而不必知道确切的父目錄名稱。(如下圖所示)

linux中的文件管理小結(Linux進階教程第2章)11

linux中的文件管理小結(Linux進階教程第2章)12

命令行文件管理

要管理文件,我們需要能創建、删除、複制和移動文件。此外,我們還需要按邏輯關系将它們整理到目錄中,這就需要我們能創建、删除、複制和移動文件。(下表是作者整理出來的最常見的文件管理命令)

linux中的文件管理小結(Linux進階教程第2章)13

1、創建文件

mkdir命令可以創建一個或多個目錄或子目錄,它取我們要創建的目錄的路徑列表作為參數。如果該目錄已存在,或者我們将試圖在一個不存在的目錄中創建子目錄,這個時候就需要我們謹慎的使用mkdir –p該命令,因為拼寫錯誤可能會創建非預期的目錄,而不會生成錯誤消息。(如下圖所示,假如我們需要在xxx/user目錄下創建文件,我們把目錄打成xxx/use,那麼就會報錯)

linux中的文件管理小結(Linux進階教程第2章)14

2、複制文件

cp命令可複制文件,在當前目錄或指定目錄中創建新文件。它也可以将多個文件複制到某一目錄中。在通過一個命令複制多個文件時,最好一個參數必須為目錄。複制的文件在新的目錄中保留其原有名稱。如果目标目錄中存在相同名稱的文件,則會覆蓋現有文件。默認情況下,cp不複制目錄,而會忽略它們。

linux中的文件管理小結(Linux進階教程第2章)15

3、移動文件

mv命令可以将文件從一個位置移動到另一個位置。如果我們将文件的絕對路徑視為它的全名,那麼移動文件上和重命名一樣,文件内容不變。(如下圖所示)

linux中的文件管理小結(Linux進階教程第2章)16

4、删除文件和目錄

rm命令可删除文件,默認情況下,除非添加了-r或—recusive選項,否則rm不會删除包含文件的目錄。rm –r命令首先遍曆每個子目錄,在删除每個目錄之前逐一删除其中的文件,我們可以使用rm –ri命令以交互方式提示确認,然後再删除。這基本上于使用-f選項相反,後者強制删除不提示用戶進行确認。

linux中的文件管理小結(Linux進階教程第2章)17

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved