歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Linux入門基礎(十) 命令行文本處理工具

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

日期:2017/3/3 16:05:16   编辑:關於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