歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux入門基礎(十) 命令行文本處理工具

基於關鍵字搜索

命令grep用以基於關鍵字搜索文本

$ grep 'shuangde'  /etc/passwd

$ find  / -user  shuangde | grep Video

-i     在搜索的時候忽略大小寫

-n    顯示結果所在行數

-v    輸出不帶關鍵字的行

-Ax  在輸出的時候包含結果所在行之後的指定行數  

-Bx  在輸出的時候包含結果所在行之前的指定行數

基於列處理文本

命令cut用以基於列處理文本內容

$ cut  -d :  -f  1 /etc/passwd   用冒號分隔並顯示passwd文件的第一列(如果顯示多列: -f 1,2,3 )

$ grep  shuangde  /etc/passwd  |  cut  -d:  -f3

-d  指定分隔符(默認是TAB)

-f   指定輸出的列號

-c  基於字符進行分割

$ cut  -c2-6  /etc/passwd

顯示第2~6個字符

文本統計

命令wc(word  count)用以統計文本信息

$ wc  file   輸出行數,單詞數,字節數

-l   (lines)   : 只統計行數

-w (words) : 只統計單詞數

-c  (bytes):只統計字節數

-m (chars):只統計字符數

 

文本排序

sort命令:用以對文本的行內容進行排序(只支持英文和數字)

$  sort  filename

-r    倒序排序

-n   基於數字進行排序

-f    忽略大小寫

-u   刪除重復行

-t c  使用c作為分隔符分割為列進行排序

-k x  當進行基於指定字符分割為列的排序時,指定基於那個列排序

刪除重復行

$ sort  -u  可以刪除重復行

$ uniq  用以刪除相鄰的重復行

文本比較

diff 命令:一行行地比較兩個文本文件的差異

$  diff   file1  file2

-i   忽略大小寫

-b  忽略空格數量的改變

-u  統一顯示比較信息(一般用以生成patch文件)

$ diff  -u  file1  file2  >  final.patch

拼寫檢查

aspell 命令: 顯示檢查英文拼寫

$  aspell  check  file    檢查文件file內的單詞拼寫,可以進行改正

$  aspell list  file   把文件file內錯誤單詞,並顯示出來

處理文本內容

tr 命令 : 改變或者刪除文本內容

刪除關鍵字

$  tr  -d  'TMD'  < filename    把T,M,D三個字母都刪掉

轉換大小寫

$  tr  'a-z'  'A-Z'  < filename

搜索替換

sed命令: 用以搜索並替換文本(stream editor for filtering and transforming text.)

$ sed  's/linux/unix/g'   file

$ sed  '1,50s/linux/unix/g'  file

$ sed  -e  's/linux/unix/g'  -e  's/hehe/haha/g'  file    可以指定多個匹配模式

$ sed  -f  sededit  file

Copyright © Linux教程網 All Rights Reserved