linux之文本處理工具

今天來聊一聊關于linux中處理shell的文本工具,主要說說以下命令:

 · 文件查看命令:cat、tac、

 · 分頁查看文件內容:more、less

 · 顯示文本前行或后行內容:head、tail

 · 按列抽取文本:cut

 · 合并文件:paste

 · 文本數據統計:wc

 · 文本排序:sort、uniq

cat

      cat命令的用途是連接文件或標準輸入并打印。這個命令常用來顯示文件內容,或者將幾個文件連接起來顯示,或者從標準輸入讀取內容并顯示,它常與重定向符號配合使用。

      1.命令格式:cat [選項] [文件]…
      2.命令功能:
           a)一次顯示整個文件:cat filename
           b)從鍵盤創建一個文件:cat > filename 只能創建新文件,不能編輯已有文件.
           c)將幾個文件合并為一個文件:cat file1 file2 > file
      3.參數:

         -E  顯示行結束符$

         -n  對顯示出的每一行進行編號

         -A  顯示所有控制符  

         -b  對輸出的非空行進行編號

         -s  將連續的空行變成一行

     4.示例:

       以顯示行號的方式顯示file文件的全部內容

linux之文本處理工具

      把兩個文件合并成一個文件

linux之文本處理工具

     用cat鍵盤輸入創建文件(圖有點亂,請別介意)

linux之文本處理工具

tac

     反向顯示內容,跟cat顯示的內容相反。

linux之文本處理工具   

more

       more會以一頁一頁的顯示方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,而且還有搜尋字串的功能 。more命令從前向后讀取文件,因此在啟動時就加載整個文件。

       命令格式:more [選項] 文件名

       命令參數:

              -b   顯示翻頁及退出提示

             +n   從笫n行開始顯示
             -n    定義屏幕大小為n行  
             -c    從頂部清屏,然后顯示
             -d    提示“Press space to continue,’q’ to quit(按空格鍵繼續,按q鍵退出)”,禁用響鈴功能
             -l     忽略Ctrl+l(換頁)字符
             -p    通過清除窗口而不是滾屏來對文件進行換頁,與-c選項相似
             -s    把連續的多個空行顯示為一行
             -u    把文件內容中的下畫線去掉
      常用操作命令:
             Enter    向下n行,需要定義。默認為1行
             Ctrl+F   向下滾動一屏
             空格鍵  向下滾動一屏
             Ctrl+B  返回上一屏
             =       輸出當前行的行號
            :f     輸出文件名和當前行的行號
             V      調用vi編輯器
             !命令   調用Shell,并執行命令 
             q       退出more

linux之文本處理工具
           

less   

     less 的用法比起 more 更加的有彈性。在 more 的時候,我們并沒有辦法向前面翻, 只能往后面看,less可以往前往后翻看文件,更容易用來查看一個文件的內容!除此之外,在 less 里頭可以擁有更多的搜索功能,不止可以向下搜,也可以向上搜。 less可同時查看多個文件使用n或者p進行切換。

     命令格式:less  [選項]  文件名

     參數:

            -b <緩沖區大小> 設置緩沖區的大小
            -e    當文件顯示結束后,自動離開
            -f     強迫打開特殊文件,例如外圍設備代號、目錄和二進制文件
            -g    只標志最后搜索的關鍵詞
            -i     忽略搜索時的大小寫
            -m   顯示類似more命令的百分比
            -N   顯示每行的行號
            -o   <文件名> 將less 輸出的內容在指定文件中保存起來
            -Q   不使用警告音
            -s    顯示連續空行為一行
            -S    行過長時間將超出部分舍棄
            -x <數字>  將“tab”鍵顯示為規定的數字空格
            /字符串   向下搜索“字符串”的功能
            ?字符串   向上搜索“字符串”的功能
            n:重復前一個搜索(與 / 或 ? 有關)
            N:反向重復前一個搜索(與 / 或 ? 有關)
            b: 向后翻一頁
            d:  向后翻半頁
            h:  顯示幫助界面
            Q:  退出less 命令
            u:  向前滾動半頁
            y:向前滾動一行
            空格鍵: 滾動一行
            回車鍵 :滾動一頁
           [pagedown]: 向下翻動一頁
           [pageup]:  向上翻動一頁


head

      用來顯示開頭行,默認顯示前10行。

      命令格式:head [參數] [文件名]

      這里只介紹 -n

linux之文本處理工具


tail

     與head相反,取后行內容,默認后10行。

linux之文本處理工具


cut

      命令格式:cut [選項] [文件名]

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

          顯示文件的指定列
          cut -d: -f1 /etc/passwd
          cat /etc/passwd | cut -d: -f7
      示例:

linux之文本處理工具

      -d: -f1 表示:以:為分隔符截取第一列的數據。

paste

      合并兩個文件同行號的列到一行
      命令格式:paste [選項]  [文件名]

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

linux之文本處理工具

wc
     wc: word count 計數
    參數: 

           -m 字符數
           -c 字節
           -l 行數
          -w 單詞數

    示例:
linux之文本處理工具 
   有沒有疑問?為什么輸入的是abcd,明明是4個,怎么字符數和字節數顯示結果都是5?是因為后面還有一個結束符沒顯示,但是系統也統計了進去。

sort

      命令格式:sort  [選項]  [文件名]

     參數:

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

uniq

      從輸入中刪除前后相接的重復的行,常和sort 命令一起配合使用
      命令格式:uniq [選項] [文件名]

     參數:
           -c: 顯示每行重復出現的次數
           -d: 僅顯示重復過的行
           -u: 僅顯示不曾重復的行
         連續且完全相同方為重復
 linux之文本處理工具

      看出什么變化了么?連著的123,被刪除了一個。再看下張圖

linux之文本處理工具

linux之文本處理工具

    好了,就先說這么多吧,有沒有覺得這些命令很好玩?大家下周見嘍!( ^_^ )/~~拜拜
































































































































































































































原創文章,作者:吼吼哈嘿,如若轉載,請注明出處:http://www.www58058.com/83092

(0)
吼吼哈嘿吼吼哈嘿
上一篇 2017-07-29 17:33
下一篇 2017-07-29 18:48

相關推薦

  • ansible的用法

    ansible 每臺主機擁有不同的功能,可能同時是http服務器,php-fpm的客戶端,共享存儲的客戶端等,這些功能是單獨定義的,不同主機需要的功能各不相同 應確保目標主機的狀態為事先給他定義的目標狀態 使目標主機達到目標狀態有兩種方法      agentless:由服務端主機通過ssh連接到目標主機執行命令,客戶端不需要額…

    Linux干貨 2016-11-11
  • 數據庫

    數據庫系統理論概述(一) –本文主要講述: – 1.數據庫和數據庫管理系統 – 2.使用傳統的文件系統對大量數據管理存在的問題 – 3.常見的數據庫系統模型 – 4.數據庫視圖 – 5.數…

    Linux干貨 2016-10-30
  • 馬哥教育網絡班21期-第三周課程練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 who|cut -d" " -f1|uniq -c|awk '{print $2}' 2、取出最后登錄到當前系統的用戶的相關信息。 last |awk 'NR==1{print $0}' last |sed -n &…

    Linux干貨 2016-07-29
  • vim文本編輯器之快捷鍵滿天飛

    vim文本編輯器不同于nano的是其功能非常強大,強大的功能還支持各種快捷鍵,讓我們編輯文本的時候更方便更快捷。 本文將會按照下圖所展示的功能來對命令一一講解,           打開文件:       &n…

    Linux干貨 2016-08-11
  • Linux三劍客之grep使用入門指南

    Linux的grep是一個具有強大功能的文本搜索工具,正確的學習和使用,能很大程度上提高工作效率,減輕運維工作所面臨的壓力。

    2017-09-09
  • Linux基礎之正則表達式,用戶、組管理

    Linux基礎—正則表達式 正則表達式簡單來說就是一種行字符串處理的方式,通過一些特殊符號的輔助,可達到搜索、刪除、替換等某些特定字符串的處理方式 通配符(Globbing) 通配符與元字符類似,通配符主要用于文件名的匹配,而元字符則主要用在字符串的匹配上; 下面介紹幾種常用的通配符: * 表示匹配任意位數的任意字符 ? 表示…

    Linux干貨 2016-10-03
欧美性久久久久