文本處理工具(一)—>cat head tail more less wc cut sort diff patch

date -s “2018-4-6”

1、cat,文件查看命令
   cat [OPTION]... [FILE]... 
 -E: 顯示行結束符$ 
 -n: 對顯示出的每一行進行編號 
 -A:顯示所有控制符 
 -b:非空行編號 
 -s:壓縮連續的空行成一行 
 tac,與cat顯示總體首尾相反顯示
 rev,與cat顯示每行首尾相反顯示
---->cat -n issue
G{YO5K4BS7PMG7M3{A_B
---->cat -b issue
ODM3[31DVFL5E3}E({5S335
----cat -A issue
[KG`J}(9LX4$~UO3T)~Y6GB
2、more: 分頁查看文件 
   more [OPTIONS...] FILE... 
   -d: 顯示翻頁及退出提示 
  less:一頁一頁地查看文件或STDIN輸出  
  less 命令是man命令使用的分頁器 
3、head [OPTION]... [FILE]... 
   -c #: 指定獲取前#字節 
   -n #: 指定獲取前#行 
     -#: 指定行數 
   tail [OPTION]... [FILE]... 
   -c #: 指定獲取后#字節 
   -n #: 指定獲取后#行 
     -#:指定行數 
     -f: 跟蹤顯示文件fd新追加的內容,常用日志監控,相當于 --follow=descriptor 
     -F: 跟蹤文件名,相當于—follow=name --retry 
  tailf 類似tail –f,當文件不增長時并不訪問文件 
---->head -3 issue |tail -1,取出issue文件第三行
BLY)4P5]G9U[D7D8GR))OBW
---->head -c30 issue |tail -c20,可以看出行結束符$也占一個字符
AYGRZ[X5CZ]~_ITN][$}34R
---->tail -f可以同步顯示文件修改內容,常用于日志監控,缺點:刪除此文件不會同步警告
---->tail -F,文件刪除時會警告
1V1WOS29)VB[9NXTVN_S8XB
*tail常用來查看服務的日志文件,日志文件寫入是追加方式。
4、cut
   cut [OPTION]... [FILE]... 
   -d DELIMITER: 指明分隔符,默認tab 
   -f FILEDS: 
   #: 第#個字段 
   #,#[,#]:離散的多個字段,例如1,3,6 
   #-#:連續的多個字段, 例如1-6,混合使用:1-3,7 
   -c 按字符切割 
   --output-delimiter=STRING指定輸出分隔符 
---->head -5 /etc/passwd |cut -d: -f1-3,7 --output-delimiter="|" 
J(GMTOATZI(IG(6~B`NXR56
擴展:paste,合并兩個文件同一行到一個文件
  paste [OPTION]... [FILE]... 
 -d 分隔符:指定分隔符,默認用TAB 
 -s : 所有行合成一行顯示 
---->paste f1 f2
0YC~_345NBY8]}BHWCNDECE
5、wc,計數單詞總數、行總數、字節總數和字符總數
---->wc story.txt 
     39 237 1901 story.txt 
   行數 字數 字節數 
  -l 只計數行數 
  -w 只計數單詞總數 
  -c 只計數字節總數 
  -m 只計數字符總數 
  -L 顯示文件中最長行的長度 
---->wc -l /etc/fstab | cut -d" " -f1,經常用來顯示文件的行數
T32WCWZ42@DL]V`H9{@MVYK
---->ls /etc/* |wc -l,可以查看目錄中文件和子目錄總數
1@3I2WV)JQ$K_PDWO_VA@O3
6、sort,把整理過的文本顯示在STDOUT,不改變原始文件
   sort [options] file(s) 
  -r 執行反方向(由上至下)整理 
  -R 隨機排序 
  -n 執行按數字大小整理 
  -f 選項忽略(fold)字符串中的字符大小寫 
  -u 選項(獨特,unique)刪除輸出中的重復行 
  -t c 選項使用c做為字段界定符 
  -k X 選項按照使用c字符分隔的X列來整理能夠使用多次 
---->head -5 /etc/fstab | sort -t: -k3 -nr |cut -d: -f1,3,7
I3{S{ZJY(LGZ26Y9M~6~HX4
7、uniq,從輸入中刪除前后相接的重復的行
   uniq [OPTION]... [FILE]... 
   -c: 顯示每行重復出現的次數 
   -d: 僅顯示重復過的行 
   -u: 僅顯示不曾重復的行             
注:連續且完全相同方為重復 
常和sort 命令一起配合使用: 
 sort userlist.txt | uniq -c 
8、diff,比較兩個文件之間的區別 
8.1 diff foo.conf foo2.conf 
  5c5 
  < use_widgets = no 
  --- 
  > use_widgets = yes 
  注明第5行有區別
G`5UFKY_FB_4%$2{JT}1D)A
8.2 diff 命令的輸出被保存在一種叫做“補丁”的文件中 
     使用-u 選項來輸出“統一的(unified)”diff格式文件,最適用于補丁文件 
   patch 復制在其它文件中進行的改變(要謹慎使用) 
     適用-b 選項來自動備份改變了的文件
$ diff -u foo.conf foo2.conf > foo.patch 
$ patch -b foo.conf foo.patch 
---->diff -u fstab issue >paste.diff;patch -b issue paste.diff
5})(WUG5X(47])T(ASK}YM9 
注:還原fstab時,原issue文件被命名為issue.orig,恢復的fstab被命名為issue.

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/95065

(0)
parrotparrot
上一篇 2018-04-06
下一篇 2018-04-06

相關推薦

  • 華為交換機配置

    示例設備華為s5700S-28P-LI-AC 用戶視圖<HUAWEI>:默認登錄 系統視圖[HUAWEI]:system-view 接口視圖[HUAWEI-GigabitEthernetX/Y/Z]:interface gigabitethernet X/Y/Z X/Y/Z為需要配置的接口的編號,分別對應“槽位號/子卡號/接口序號” 路由協議視圖…

    Linux筆記 2018-06-07
  • Linux基礎命令

    本文主要介紹:1、修改命令提示符 2、執行命令(內部,外部) 3、命令別名 4、命令history

    2018-04-01
  • PXE自動化安裝centos6與centos7

    PXE自動化安裝centos7系統1、確保防火墻和selinux全部關閉2、yum -y install dhcp tftp-server httpd syslinux3、啟動相關服務systemctl start httpdsystemctl enable httpdsystemctl start tftp.servicesystemctl enable …

    Linux筆記 2018-05-28
  • sed命令應用

    sed 正則表達式

    2018-04-15
  • 文本搜索工具

    文本搜索 locate 根據庫來查找,非實時查找,只能訪問有權限訪問的文件或目錄 依賴庫/usr/lib/mlocate/molate.db 更新數據庫 updatedb -i 忽略大小寫 -n只列出前幾個 -r支持正則 find 掃描磁盤進行查找,消耗資源大 -o 或者 -empty空文件后者目錄 -not 或! ls 對匹配的文件以長格式顯示 -dele…

    Linux筆記 2018-04-15
  • 計算機原理與Linux基礎

    計算機的組成及功能 1、其實計算機的組織分為內部設備和外部設備, 內部設備: ? ? ? ? CPU:運算器、寄存器、緩存 ? ? ? ? 存儲器:內存,RAM(Random Access Memory) ? ? ? ? 控制器:控制器是整個計算機系統的控制中心,它指揮計算機各部分協調地工作,保證計算機按照預先規定的目標和步驟有條不紊地進行操作及處理。 外部…

    Linux筆記 2018-05-13
欧美性久久久久