歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Linux基本配置和管理 3 Linux命令行文本處理工具

Linux基本配置和管理 3 Linux命令行文本處理工具

日期:2017/3/3 16:17:59   编辑:關於Linux

1 文件浏覽(簡單回顧)

1 cat 查看文件的內容

2 more 以翻頁的形式查看,但是只能向下翻頁

3 less 以翻頁的形式查看,但是能夠支持向上和向下翻頁

4 head 默認是查看前10行,但是我們指定查看的行數

5 tail 默認是查看後10行,但是我們可以指定查看的行數

2 基於關鍵字的搜索

假設我在家目錄下創建了一個tmp.cpp

1 命令grep是基於關鍵字進行搜索

2 單個關鍵字搜索: grep 關鍵字 文件名

比如我在tmp.cpp 裡面搜索Linux

3 多關鍵字搜索: grep -E "關鍵字|關鍵字..." 文件名

比如我在tmp.cpp裡面同時搜索哦含有Linux 和test

4 grep的其它參數

1 -i 是忽略大小寫

2 -n 是顯示結果所在的行

3 -v 是輸出不帶關鍵字的行(等於取反)

4 -Ax是輸出的時候包含結果所在行之後x行

5 -Bx是輸出的時候包含結果所在行之前x行

3 基於列的處理

1 cut命令是用於基於列的文本處理

2 cut -dc -fx 文件名

c是要分割的字符(默認是TAB),x是顯示第幾列

比如我以":"作為分割符 查看/etc/passwad的第1列

2 我們也可以利用管道來進行cut

比如我先利用grep命令在/etc/passwad中搜索出含有chen關鍵字的文本結果,然後利用管道去cut出 用:作為分割符並且顯示第六列

4 文本統計

1 wc命令用來統計文本的信息,默認輸出幾行,幾個單詞,幾個字節,文件名

我們還是利用上面的tmp.cpp

2 wc還有一些參數

-l 只統計行數

-w 只統計單詞

-c 只統計字節數

-m 只統計字符數

5 文本排序

1 命令sort是用來對文本進行排序 sort 文本名

2 sort的常用的參數

-r 進行倒序排序

-n 基於數字進行排序

-r 忽略大小寫

-u 刪除重復行

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

-kx 當基於分割符分割為列進行排序時,指定x列來排序

3 刪除重復行

sort -u 文件名

uniq 文件名 用來刪除相鄰的重復行

6 文本的比較

1 命令diff用來比較兩個文本文件

diff 文件1 文件2

比如我們比較家目錄下的tmp.cpp 和 tmp2.cpp

2 diff的一些參數

-i 忽略大小寫

-b 忽略空格的數量

-u 統一的顯示比較的信息,用以生成patch文件,一般可以用來作為補丁,實際上就是把比較信息重 定向到patch文件

7 文本處理

1 刪除某個關鍵字

tr -d 關鍵字 < 文件名

2 轉換大小寫

tr 'a-z' 'A-Z' < 文件名

7 文本的搜索替換

命令sed用來實現文本的替換功能,其內部實現的是一個正則表達式

1 sed 's/linux/unix/g' 文件名

那麼這個命令就是把文本裡面的linux替換為unix,g的意思是如果一行有多個linux則全部替換

2 sed '1,50s/linux/unix/g' 文件名

那麼這個命令就是把1~50行裡面的linux替換為unix,g的意思是如果一行有多個linux則全部替換

3 sed -e 's/linux/unix/g' -e 's/haha/fuck/g' 文件名

那麼這個命令就是實現多個同時替換,把所有linux替換為unix,haha替換為fuck

4 sed -f sededit 文件名

這個命令就是說如果我們很廠用到某個命令,那麼我們把這個命令寫道sededit文本裡面,那麼每次 調用-f sededit就比較方便

 

Copyright © Linux教程網 All Rights Reserved