Linux檔案管理知識:文字處理
上篇文章詳細介紹了 系統中查詢檔案的工具或者命令程式的相關操作內容介紹。那麼,今天呢,這篇文章圍繞 來闡述。
眾所周知,所有Linux 作業系統都離不開一個核心原則,那就是它是由很多種檔案組成的,那麼,Linux 系統的任何操作就離不開文字檔案的處理。所以,它有很多命令工具用來處理文字的。在這篇文章中我們主要介紹下用於文字格式化輸出及其它常用的命令工具。
常見的命令工具如下:
命令(工具)名稱 |
描述 |
cat |
用於連線檔案並且列印到標準輸出 |
sort |
用於給文字行排序 |
uniq |
用於報告或者省略重複行 |
cut |
用於從每行中刪除文字區域 |
paste |
用於合併檔案文字行 |
join |
用於基於某個共享欄位來聯合兩個檔案的文字行 |
comm |
用於逐行比較兩個有序的檔案 |
diff |
用於逐行比較檔案 |
patch |
用於給原始檔案打補丁 |
tr |
用於翻譯或刪除字元 |
sed |
用於篩選和轉換文字的流編輯器 |
aspell |
用於互動式拼寫檢查器 |
接下來,我們先回顧下Linux 系統文書處理工具。
Linux 文書處理工具
說到Linux 文書處理工具或者程式,我相信大家首先提到就是vim 了。是的,沒錯!但是文字還可以用來做什麼呢?這個值得大家思考!
在這裡列舉一些用途:
² 透過純文字格式形式編寫檔案;
² 另一種文字檔案格式就是網頁,目前最常見的就是透過超文字標記語言HTML 或可擴充套件的標記語言XML 作為標記語言來實現的;
² 基於文字的電子郵件email ;
² 純文字格式格式化輸出;
² 軟體開發裡的程式原始碼;.
cat-A 命令程式
cat-A 命令程式,可將文字非列印字元(比如說控制字元tab 、空格、回車字元等)顯示出來。
例項1 :
第一步:建立測試檔案或者例項
[root@linuxprobe ~]$ cat > test1.txt
The food is delicious.
[root@linuxprobe ~]$
備註:
建立測試檔案test1.txt ,輸入cat 命令指定了用於重定向輸出的檔案test1.txt ,隨後輸入文字內容“ The ”,最後回車Enter 鍵;使用Ctrl+D 組合鍵指示cat 命令。
需要注意的是測試檔案test1.txt 文字內容的開頭和末尾分別使用了一個tab 字元以及一些空格。
第二步:剛剛建立的測試檔案test1.txt 文字內容透過cat-A 命令顯示出來:
[root@linuxprobe ~]$ cat -A test1.txt
^IThe food is delicious.. $
[root@linuxprobe ~]$
結論:
在輸出的顯示結果中我們可以分析:
文字中的tab 字元由ˆI 字元來顯示出來。
文字末尾的空格由$ 字元來顯示出來。
例項2 :
第一步:建立測試檔案或者例項
[root@linuxprobe ~]$ cat > test2.txt
It tastes delicious,
and makes one run at the mouth.
[root@linuxprobe ~]$
[root@linuxprobe ~]$ cat -ns // -n :給文字行新增行號
-s :禁止輸出多個空白行
1 It tastes delicious,
2
3 and makes one run at the mouth.
[root@linuxprobe ~]$
備註:
重新建立了一個新的測試檔案test2.txt,其文字內容為It tastes delicious,
and makes one run at the mouth. 並 由兩個空白行區分開。經過cat -ns命令程式執行處理(給文字行新增行號,並將禁止輸出多個空白行輸出)輸出顯示出來。
sort 命令程式
sort 命令程式針對指定的文字內容或命令列中指定的一個或多個內容進行排序,並將排序結果標準輸出顯示出來。
sort 程式來處理標準輸入例項:
[root@linuxprobe ~]$ sort test3.txt
2
3
1
[root@linuxprobe ~]$ ccat test3.txt
將test1.txt test2.txt test3.txt三個文字檔案合併為一個有序的檔案sorted _test_list.txt。
Sort 命令程式的常見選項引數如下表:
選項 |
長選項 |
描述 |
-b |
--ignore-leading-blanks |
預設情況下,對整行進行排序,從每行的第一個字元開始。這個選項導致sort 程式忽略每行開頭的空格,從第一個非空白字元開始排序。 |
-f |
--ignore-case |
讓排序不區分大小寫。 |
-n |
--numeric-sort |
基於字串的數值來排序。使用此選項允許根據數字值執行排序,而不是字母值。 |
-r |
--reverse |
按相反順序排序。結果按照降序排列,而不是升序。 |
-k |
--key=field1[,field2] |
對從field1 到field2 之間的字元排序,而不是整個文字行。看下面的討論。 |
-m |
--merge |
把每個引數看作是一個預先排好序的檔案。把多個檔案合併成一個排好序的檔案,而沒有執行額外的排序。 |
-o |
--output=file |
把排好序的輸出結果傳送到檔案,而不是標準輸出。 |
-t |
--field-separator=char |
定義域分隔字元。預設情況下,域由空格或製表符分隔。 |
這篇文章主要介紹了cat及sort命令程式,它們是如何被用來執行文書處理操作的。
Linux 系統知識博大精深,所以我在此強烈建議大家可以參考下 這本書,對於linux系統文書處理層面的介紹很詳細!那麼關於Linux系統中文書處理命令的操作及運用介紹先告一段落了,後期文章會一一補發。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2993585/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 11.9Linux檔案管理知識:文字處理Linux
- (五)Linux之檔案與目錄管理以及文字處理Linux
- Linux文字處理命令Linux
- Shell指令碼逐行處理文字檔案技巧指令碼
- Linux文字處理技巧分享Linux
- 處理 Linux 檔案的 3 個技巧Linux
- linux 透過xmllint處理xml檔案LinuxXML
- Linux中利用csvquote處理csv檔案Linux
- Linux文字處理詳細教程Linux
- Python編解碼問題與文字檔案處理Python
- Linux檔案處理三劍客之grepLinux
- Linux檔案處理三劍客之sedLinux
- Linux檔案處理三劍客之awkLinux
- linux入門必學檔案處理命令Linux
- Linux——檔案傳輸協議知識點梳理Linux協議
- 處理器基礎知識
- python 檔案處理Python
- python處理檔案Python
- python檔案處理Python
- Linux檔案管理Linux
- 如何快速處理證件文字識別
- JAVA檔案操作知識Java
- python處理txt檔案Python
- window 批處理檔案
- Python之檔案處理Python
- Go xml檔案處理GoXML
- 【知識分享】Linux檔案傳輸常用的9個命令!Linux
- Linux常用的文字檔案操作命令Linux
- Infrastructure 知識: dnf對module的處理ASTStruct
- 記一次800多萬XML文字檔案預處理經歷XML
- 【知識分享】linux伺服器目錄檔案的命令操作Linux伺服器
- Linux 檔案系統與日誌分析的相關知識Linux
- node js 處理PDF檔案JS
- 控制檔案損壞處理
- Python批處理:檔案操作Python
- python ini 配置檔案處理Python
- Python如何處理檔案的?Python
- 使用 Python 處理 CSV 檔案Python