1.常用文件處理命令
文件處理命令:touch
命令所在路徑:/bin/touch
執行權限:所有用戶
語法:touch [文件名]
功能描述:創建空文件,可以同時創建多個文件,空格隔開。
範例:$ touch /tmp/Japanlovestory.list
文件處理命令:cat
命令所在路徑:/bin/cat
執行權限:所有用戶
語法:cat [文件名]
功能描述:顯示文件內容,不適合顯示內容很多的文件
-n 顯示行號
範例:$ cat /etc/issue
$ cat -n /etc/services
文件處理命令:tac
命令所在路徑:/usr/bin/tac
執行權限:所有用戶
語法:tac [文件名]
功能描述:顯示文件內容(反向顯示,從文章最後一行開始顯示)
範例:$ tac /etc/issue
文件處理命令:more
命令所在路徑:/bin/more
執行權限:所有用戶
語法:more [文件名]
- (空格)或f 翻頁
- (Enter) 換行
- q或Q 退出
功能描述:分頁顯示文件內容,對於文件裏面內容很多的可以這樣操作。
範例:$ more /etc/services
文件處理命令:less
命令所在路徑:/usr/bin/less
執行權限:所有用戶
語法:less [文件名]
功能描述:分頁顯示文件內容(可向上翻頁)
- 向上箭頭表示一行一行向上
- PageUP或b是翻到上一頁
- ‘/’ + 你要搜索的關鍵詞,文件中搜索到關鍵詞的就都會被標記。按n,表示next,找到下一個標記。
- 其它都與more相同。
範例:$ less /etc/services
文件處理命令:head
命令所在路徑:/usr/bin/head
執行權限:所有用戶
語法:head [文件名]
功能描述:顯示文件前面幾行
-n 指定行數,顯示前n行。不加n,默認顯示前10行
範例:$ head -n 20 /etc/services
文件處理命令:tail
命令所在路徑:/usr/bin/tail
執行權限:所有用戶
語法:tail [文件名]
功能描述:顯示文件後面幾行
-n 指定行數,顯示後n行
-f 動態顯示文件末尾內容,只要文件被改,它就會實時顯示信息
範例:$ tail -n 18 /etc/services
2.Linux中的鏈接文件
鏈接命令:ln
命令英文原意:link
命令所在路徑:/bin/ln
執行權限:所有用戶
語法:ln -s [源文件] [目標文件]
-s:創建軟連接
功能描述:生成鏈接文件
範例:$ ln -s /etc/issue /tmp/issue.soft
說明:創建文件/etc/issue的軟連接/tmp/issue.soft
$ ln /etc/issue /tmp/issue.hard
說明:創建文件/etc/issue的硬連接/tmp/issue.hard
那麼,何爲軟鏈接和硬鏈接呢?爲什麼要有軟鏈接、硬鏈接?二者的區別是什麼?想要知道答案,請往下看~~
軟鏈接文件:類似於Windows桌面的快捷方式(可以這樣理解)。我們雙擊快捷方式之後,系統就會去尋找C盤下面Program Files文件夾中找到原文件,快捷方式只是一個很簡單的鏈接指向,指向原文件。軟鏈接也是如此,打開軟鏈接文件的時候,實際上是打開原文件。想問爲什麼會需要軟鏈接,就好像問,Windows上爲什麼需要快捷方式?(沒有快捷方式的話,你每次打開軟件都要從硬盤裏面去一個個找)
[root@bogon ~]$ ln -s /tmp/Japan/a.txt /tmp/China/b.txt #創建軟鏈接
[root@bogon ~]$ ls -l /tmp/Japan/a.txt #原文件詳細信息
-rw-rw-r--. 1 root root 92 Feb 28 18:35 /tmp/Japan/a.txt
[root@bogon ~]$ ls -l /tmp/China/b.txt #軟鏈接文件詳細信息
lrwxrwxrwx. 1 root root 16 Feb 28 18:33 /tmp/China/b.txt -> /tmp/Japan/a.txt
軟鏈接文件特點:
- 從軟鏈接文件詳細信息可以看出,軟鏈接文件都以‘l‘開頭(上一篇文章說過,l 表示軟鏈接文件類型)。軟連接文件權限都爲rwxrwxrwx。所有人對軟鏈接文件都有所有權限。這是因爲,不管你如何修改軟鏈接文件,都不會影響到原文件。
- 軟鏈接文件的大小很小,就像快捷方式一樣,它只是一個符號鏈接,鏈接到原文件而已。就像上邊的例子,原文件是92個字節,軟鏈接文件是16個字節。
- 軟連接文件屬性的後面,可以看到,會顯示:鏈接文件->原文件。如:
lrwxrwxrwx. 1 root root 16 Feb 28 18:33 /tmp/China/b.txt -> /tmp/Japan/a.txt
- 軟鏈接可以跨分區,舉個簡單的例子,就是C盤的文件可以軟鏈接到D盤。
- 軟鏈接,如果原文件被刪除,軟鏈接文件無法被訪問。
硬鏈接文件特點:
- 對於硬鏈接,你可以理解爲命令:
cp -p [源文件或目錄] [目標目錄]
。硬鏈接文件就是將原文件複製一份(保存文件屬性),並且,它與原文件同步更新。也就是說,只要原文件有改動,硬鏈接文件也會隨之改動
[root@bogon ~]$ ln /tmp/Japan/a.txt /tmp/China/c.txt #創建硬鏈接
[root@bogon ~]$ ls -l /tmp/Japan/a.txt #原文件詳細信息
-rw-rw-r--. 2 root root 92 Feb 28 18:35 /tmp/Japan/a.txt
[root@bogon ~]$ ls -l /tmp/China/c.txt #硬鏈接文件詳細信息
-rw-rw-r--. 2 root root 92 Feb 28 18:35 /tmp/China/c.txt
-
如上所示,硬鏈接文件與原文件,除了文件名不一樣以外,其他東西都一模一樣。
-
原文件被刪除,硬鏈接文件照樣可以正常訪問,可以正常使用。
-
硬鏈不能針對目錄鏈接,它只能針對文件。
-
不能跨分區,簡單的例子就是,D盤的文件只能硬鏈接到D盤。
-
硬鏈接文件的id號與原文件的id號一樣(如下圖)。這一點可以解釋上邊的同步更新原理:因爲文件更新是內核方面,根據id號來更新的,因爲兩個文件id號一樣,所以同步更新。
[root@bogon ~]$ ls -i /tmp/Japan/a.txt #原文件的id號
59317 /tmp/Japan/a.txt
[root@bogon ~]$ ls -i /tmp/China/c.txt #硬鏈接文件的id號
59317 /tmp/China/c.txt
3.總結
文章總結了一些常見的文件管理命令。和昨天寫的常用命令(一),都是對文件管理的一些常用命令。比較重要的是鏈接文件,這個在Linux中還是很重要的。強烈建議初學者,要一點一點的敲代碼,將每個命令都要敲兩遍。學Linux,命令是最枯燥乏味、但也是最重要的,還是要勤加練習~~
後面的學習會繼續更新,請多多關注~