文本處理工具(一)

文本處理工具

查看工具

cat;tac;rev;more

cat

連接文件,并打印到標準輸出上。

注意:當文件比較大的時候,文本在屏幕上一閃而過,導致無法看清內容,所以對于較大的文件建議結合著more,less等命令結合來用。

使用方法:

-E: 顯示行結束符$
-n: 對顯示出的每一行進行編號  空行也加行號
-A:顯示所有控制符  相當于-ETV
-b:非空行編號  
-s:壓縮連續的空行成一行
-v:非打字符
     顯示^M等這些非打印字符      
-T:顯示制表符 ^I(tab鍵)

快捷鍵:

^s 停止滾屏
 ^q 恢復滾屏
 ^c 中斷命令

示例: cat 1.log 2.log >3.log 把文件1.log和2.log合并打印到3.log并且是按文件順序合并。 #cat合并

nl命令相當于cat -b 同樣可以顯示非空行的編號,有空格也不算非空行。nl是一條命令而不是別名可以用man 查看

文本處理工具(一)

tac 顯示的效果與cat相反,是行相反,就是第一行會變為最后一行。tac也是一條命令不是別名。

文本處理工具(一)

rev 是倒敘顯示的一種命令,我們通常來講是翻轉,他把每一行的字符反過來顯示,但是行還是不變的。

文本處理工具(一)

more

分頁查看文件

使用方法:

-c:顯示前幾行
   more -c  -5 passwd
-d: 顯示翻頁及退出提示
   more -cd -10 passwd

文本處理工具(一)

在加管道的情況下,centos7.3不能翻頁,但是6.9可以用^b進行翻頁

less

一頁一頁地查看文件,跟more比較相似,但是less系統默認允許向前先后翻頁,該命令只對文本文件有效,或者是搜索。

pageup 向上
pagedown 向下

less命令是man命令使用的分頁器

當正在瀏覽一個文件時,也可以使用 :e命令 打開另一個文件。

默認分頁顯示結束的時候也不會退出顯示,需要用Q退出。

常用選項:

-e 文件內容顯示結束自動關閉
-N 顯示每行的行號
-s 將連續的空行壓縮成一行顯示

文件行列操作工具

paste 合并兩個文件同行號的列到一行

一般會與diff命令一起使用來修復文件

-d 分隔符:指定分隔符,默認用TAB
-s : 所有行合成一行顯示
paste f1 f2
paste -s f1 f2

示例 #paste

head

顯示文件前幾行(默認顯示是)行

-c #: 指定獲取前#字節
-n #: 指定獲取前#行
-#:指定行數

顯示文件的前兩行

文本處理工具(一)

并且可以顯示文件的前幾個字節,當文件內容是漢字的時候,一個漢字會占到三個字節。

文本處理工具(一)

tail 顯示后幾行,用法跟head一樣默認也是顯示后十行。

-c #: 指定獲取后#字節
-n #: 指定獲取后#行
-#:
-f: 跟蹤顯示文件新追加的內容,常用日志監控  
   后加

tail可以跟head向結合取特定的某一行 #特定行

當tail-f用于跟蹤日志的時候可以加&讓監控放到后臺運行,不影響其他操作,什么時候有更新會自動彈出來提醒。

cut 用來剪切某一列

-d DELIMITER: 指明分隔符,默認tab
-f FILEDS:
#: 第#個字段
#,#[,#]:離散的多個字段,例如1,3,6
#-#:連續的多個字段, 例如1-6
混合使用:1-3,7
-c按字符切割
--output-delimiter=STRING指定輸出分隔符

通常與tail,head,tr,cat等命令配合使用查詢某一個特定的數據。
比如查看磁盤的利用率

文本處理工具(一)

有一個文件是存隨機字符串的 /dev/urandom 我們也可以從中提取出來一些字母數字做為口令用,但是文件里包含的也有特殊符號,所以要過濾一樣再獲取。

文本處理工具(一)

這是生成10位的口令

分析工具

在分析的工具中,最為普遍的就是數據統計(wc)和整理文本的(sort)。當然也少不了一些對比的工具,比如diff和patch。

wc

統計單詞總數、行總數、字節總數和字符總數。

文本處理工具(一)

第一個代表行數,第二個代表單詞數,第三個代表字符總和。

也可以特殊的選項來顯示不同的統計:

使用-l來只計數行數
使用-w來只計數單詞總數
使用-c來只計數字節總數
使用-m來只計數字符總數

sort 把文件按照一定的方式整理打印到標準輸出上,不改變原始文件。

常用選項:

-r執行反方向(由上至下)整理
-n執行按數字大小整理
-f選項忽略(fold)字符串中的字符大小寫
-u選項(獨特,unique)刪除輸出中的重復行
-t c選項使用c做為字段界定符
-k X選項按照使用c字符分隔的X列來整理能夠使用多次

一般-k -t會配合使用按照某一列來排序

以:為分割符,把第三列按數字大小排序

文本處理工具(一)

最后要提一下文件中使用的兩個命令,patch和diff。diff命令輸出常被保存做成補丁的文件

diff 比較兩文件內容之間的區別

文本處理工具(一)

比較這里兩文件之后的顯示 他明確的指出來第幾行,并進行比較。

通常diff與patch一起使用,為程序打補丁。

diff-ufoo.conf-brokenfoo.conf-works>foo.patch

把差異寫到補丁文件中

patch-bfoo.conf-brokenfoo.patch

用補丁文件對數據恢復或更改

patch復制在其它文件中進行的改變(要謹慎使用),適用-b選項來自動備份改變了的文件。

原創文章,作者:phosphor,如若轉載,請注明出處:http://www.www58058.com/77317

(0)
phosphorphosphor
上一篇 2017-06-01
下一篇 2017-06-01

相關推薦

  • 第九周作業

    1. 寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; # awk -F: ‘{if($7!=”/sbin/nologin”) {printf “Logined user %s\n”…

    Linux干貨 2017-03-01
  • linux 關于 AWK 解析

    關于awk awk是一個報告生成器,他擁有強大的文本格式化的能力。 其實我么可以利用awk命令將一些文本整理成我們想要的樣子,比如把一些文本整理成“表”的樣子。然后打印出來,至于格式化能力會舉例出來,自然會明白。 awk是有Alfred Aho,Peter Weinberger好人Brian Kernighan 這三人創造的,awk由這三個人的姓氏的首個字母…

    2017-09-09
  • 權限命令總結

    修改文件權限:chmod 1 2 3 4 [root@centos7 ~]# man chmod        chmod [OPTION]… MODE[,MODE]… FILE…    …

    Linux干貨 2016-08-04
  • 文件通配符是啥?

    文件通配符     包含 ‘?’, ‘*’ 或 ‘[‘ 字符的字符串稱為通配符模板(wildcard  pattern).形成路徑名(globbing)指一種操作,把通配符模板展開為匹配該串的路徑名.匹配定義為:   …

    Linux干貨 2017-04-23
  • 億級用戶下的新浪微博平臺架構

    序言     新浪微博在2014年3月公布的月活躍用戶(MAU)已經達到1.43億,2014年新年第一分鐘發送的微博達808298條,如此巨大的用戶規模和業務量,需要高可用(HA)、高并發訪問、低延時的強大后臺系統支撐。 微博平臺第一代架構為LAMP架構,數據庫使用的是MyIsam,后臺用的是php,緩存為Memcache。 隨著應用規?!?/p>

    2015-03-16
  • 馬哥教育網絡班21期+第2周課程練習

    一、Linux文件管理類命令     1、文件的復制、移動和刪除        A、cp  文件的復制          cp命令的用法:    &n…

    Linux干貨 2016-06-26
欧美性久久久久