🌈個人主頁: Aileen_0v0 🔥熱門專欄: 華為鴻蒙系統學習|計算機網絡|數據結構與算法 ?💫個人格言:“沒有羅馬,那就自己創造羅馬~”
目錄結構解析
drwxr-xr-x 2 student student 4096 10月 8 2023 Desktop
d
表示這是一個目錄。rwx
表示所有者(student)有讀(r)、寫(w)、執行(x)權限。r-x
表示與所有者同組的用戶(student)有讀、執行權限,沒有寫權限。r-x
表示其他用戶也有讀、執行權限,沒有寫權限。2
表示這個目錄有兩個硬鏈接(目錄至少有一個硬鏈接指向它自身,另一個可能是父目錄)。student
是所有者用戶名。student
是所屬組名。4096
表示目錄占用的空間大小(通常是文件系統的塊大小)。10月 8 2023
是目錄的最后修改日期。Desktop
是目錄的名稱。 drwxr-xr-x 3 student student 4096 10月 9 2023 Documents
同上,但這個目錄有三個硬鏈接,最后修改日期是10月9日。 drwxr-xr-x 2 student student 4096 10月 25 16:57 Downloads
同上,但最后修改日期和時間是10月25日16:57。 -rw-r--r-- 1 student student 8980 10月 8 2023 examples.desktop
-
表示這是一個普通文件。rw-
表示所有者有讀寫權限。r--
表示與所有者同組的用戶只有讀權限。r--
表示其他用戶也只有讀權限。1
表示這個文件有一個硬鏈接。student
是所有者用戶名。student
是所屬組名。8980
是文件大小。10月 8 2023
是文件的最后修改日期。examples.desktop
是文件的名稱。 -rwxrwxr-x 1 student student 8304 10月 22 21:26 hello
-
表示這是一個普通文件。rwx
表示所有者有全部權限。rwx
表示與所有者同組的用戶也有全部權限。r-x
表示其他用戶有讀、執行權限。1
表示這個文件有一個硬鏈接。student
是所有者用戶名。student
是所屬組名。8304
是文件大小。10月 22 21:26
是文件的最后修改日期和時間。hello
是文件的名稱。 -rw-rw-r-- 1 student student 140 10月 23 09:40 hello.c
-
表示這是一個普通文件。rw-
表示所有者有讀寫權限。rw-
表示與所有者同組的用戶也有讀寫權限。r--
表示其他用戶只有讀權限。1
表示這個文件有一個硬鏈接。student
是所有者用戶名。student
是所屬組名。140
是文件大小。10月 23 09:40
是文件的最后修改日期和時間。hello.c
是文件的名稱,通常表示這是一個C語言源代碼文件。 -rw-rw-r-- 1 student student 1680 10月 23 22:11 hello.o
同上,但文件大小是1680字節,最后修改時間是10月23日22:11,hello.o
通常表示這是一個編譯后的目標文件。 -rw-rw-r-- 1 student student 72 10月 23 20:17 helloprinter.c
同上,但文件大小是72字節,最后修改時間是10月23日20:17,helloprinter.c
表示這是一個C語言源代碼文件。 -rw-rw-r-- 1 student student 43 10月 23 17:46 helloprinter.h
同上,但文件大小是43字節,最后修改時間是10月23日17:46,helloprinter.h
表示這是一個C語言頭文件。 -rw-rw-r-- 1 student student 1552 10月 23 22:11 helloprinter.o
同上,但文件大小是1552字節,最后修改時間是10月23日22:11,helloprinter.o
表示這是一個編譯后的目標文件。 -rwxrwxr-x 1 student student 8376 10月 23 22:11 helloworld_linked
同第5條,但文件大小是8376字節,最后修改時間是10月23日22:11,helloworld_linked
可能是一個可執行文件。 -rwxrwxr-x 1 student student 8304 10月 22 21:28 hw
同第5條,但文件大小是8304字節,最后修改時間是10月22日21:28,hw
可能是一個可執行文件或作業文件。 -rw-rw-r-- 1 student student 309 10月 23 22:08 makefile
同第6條,但文件大小是309字節,最后修改時間是10月23日22:08,makefile
用于GNU Make工具,用于自動化編譯和構建程序。 drwxr-xr-x 2 student student 4096 10月 8 2023 Music
-rwxrwxr-x 1 student student 8304 10月 22 21:57 params
同第5條,但文件大小是8304字節,最后修改時間是10月22日21:57,params
可能是一個可執行文件或參數文件。 -rw-rw-r-- 1 student student 236 10月 22 21:56 params.c
同第6條,但文件大小是236字節,最后修改時間是10月22日21:56,params.c
表示這是一個C語言源代碼文件。 drwxr-xr-x 2 student student 4096 10月 8 2023 Pictures
drwxr-xr-x 2 student student 4096 10月 8 2023 Public
drwxr-xr-x 2 student student 4096 10月 8 2023 Templates
drwxr-xr-x 2 student student 4096 10月 8 2023 Videos
Summary
ls
顯示隱藏文件 :輸入命令查看所有文件,包括隱藏文件(以“.”開頭的文件):
ls -a
列出文件的詳細信息 :使用帶選項的ls
命令列出詳細信息:
ls -l
該命令執行結果含義:
開頭第一個:d表示目錄,-表示普通文件 開頭第一個后面的3組字符分別表示的是, * ①文件所有者的權限(User that owns the file) , * ②文件所有者同組用戶的權限(group of people to whom the file) , * ③其它用戶的權限(rightmost group permissions for everyone)。 每組字符都是按照以下順序排列的 r:讀權項 read and copy file w:寫權項 change file x:執行權項 execute file -:表示無相應權限 第一個數字表示硬鏈接數量 硬鏈接(Hard Link)——文件的克隆:一種 特殊的文件鏈接方式,直接鏈接到文件的數據 ,而不是文件名。Hard Link feature: 1.指向同一文件系統或目錄(文件數據的直接鏈接,而不是文件名) 2.共享inode(索引節點) ,意味著這些結點指向 的是同一個文件數據 。3.刪除行為:刪除硬鏈接 不影響原始文件 ,只有當硬鏈接都被刪除后,文件數據才會被刪除 4.不可跨分區:硬鏈接不能跨越不同的分區或儲存設備創建。 **5.不可鏈接目錄:**因為硬鏈接鏈接目錄可以繞過目錄的權限系統,可導致安全問題。 硬鏈接的數量 表示有多少個有效的硬鏈接指向該文件的inode。例如,如果一個文件有2個硬鏈接,這意味著有兩個不同的文件名指向同一個文件數據。即使其中一個硬鏈接被刪除,文件數據仍然存在,因為還有其他硬鏈接指向它。eg:硬鏈接 :假設你有文件file1.txt
,你創建了一個硬鏈接file2.txt
指向file1.txt
。file2.txt
和file1.txt
實際上是同一個文件,對任何一個文件的修改都會反映在另一個上。如果你刪除了file1.txt
,file2.txt
仍然可以訪問文件內容,因為文件數據仍然存在。 拓展學習: 軟鏈接(Symbolic Link)——文件的快捷方式:一個特殊類型的文件,包含另一個文件或目錄的路徑。 Symbolic Link feature: 1.軟鏈接本身是一個獨立的文件,擁有自己的文件名,文件權限,inode(索引節點)。 2.獨立inode 3.可跨文件系統:可跨越不同的文件系統,鏈接到不存在的文件或目錄 4.刪除行為:刪除目標文件會使得軟鏈接變成死鏈接(dangling link),因為軟鏈接中存儲的是目標路徑,而不是數據本身。
ls -lt
ls -lS
ls -lrS
ls -lrt
快捷鍵 功能描述 Ctrl-A
跳轉到行首 Ctrl-E
跳轉到行尾 Ctrl-K
刪除從光標位置到行尾的所有內容 Ctrl-W
刪除從光標位置到它之前的最近的單詞邊界 Ctrl-Y
粘貼最近刪除的內容 Ctrl-C
終止當前運行的命令 Ctrl-L
清屏 Ctrl-R
搜索歷史命令 Tab
自動補全命令或文件/目錄名稱 ↑
和 ↓
在歷史命令中向上或向下滾動
命令 功能描述 ls 列出當前工作目錄中的文件和目錄 ls -a 列出當前工作目錄中的所有文件和目錄,包括隱藏文件 ls -l 以詳細信息格式列出文件和目錄 ls -lt 以修改時間排序的詳細信息格式列出文件和目錄 ls -lS 以文件大小排序的詳細信息格式列出文件和目錄 ls -lrS 以大小降序顯示文件和目錄 ls -lrt 以修改時間升序顯示文件和目錄 mkdir 目錄名 在當前工作目錄中創建一個新目錄 cd 目錄名 切換到指定的目錄 cd 切換回到用戶的主目錄 cd ~ 切換到用戶的主目錄 cd … 切換到上一級目錄 pwd 顯示當前工作目錄的絕對路徑 cd . 停留在當前目錄 ls ~/… 列出主目錄的父目錄中的內容
part3
命令 功能描述 command > file
將標準輸出重定向到文件(會覆蓋文件內容)。 command 2> file
將標準錯誤重定向到文件。 command >> file
將標準輸出追加到文件末尾(不覆蓋文件內容)。 command < file
從文件讀取標準輸入。 `command1 command2` cat file1 file2 > file0
將 file1
和 file2
的內容合并到 file0
中。 sort
對輸入數據按字母順序或數字順序進行排序。 who
顯示當前登錄的用戶列表。 `who wc -l`
part4
命令 功能描述 *
匹配任意數量的字符 ?
匹配一個字符 man command
查看命令的在線手冊頁 whatis command
查看命令的簡要描述 apropos keyword
查找在手冊頁標題中包含指定關鍵字的命令
part5