Linux基礎命令之文本命令

關于文本的命令:

    1.文件查看命令:

       a.cat:查看文件,實現參數給的內容一個個顯示出來

           -n:顯示行號(顯示的空行的行號)

           -b:顯示行號(但空行不顯示行號)

           -s:當有連續的多個空行壓縮為單行(只壓縮空行,多行連續的字符不會被壓縮)

           -v:查看文件中的 ^M

           -T:顯示文件中的TAB鍵顯示為^I

           -e:顯示行結束符$

           -A:顯示所有的控制符相當于 -evT    

        b.tac:與cat命令的用法相同,只是將cat命令顯示的內容反向顯示出來

        c.tev:將文件中的字符倒序顯示,每一行倒序顯示。

    2.分頁查看文件

        a.more:按照頁數一頁頁的顯示文本中的內容

            space:向下翻一頁

            d:向下翻半屏

            Enter:向下滾動一行

            /PATTERN:查找想要匹配的字符

            q:退出more顯示的內容,不再顯示該內容,退回到命令模式

            d:向前翻一頁

        b.less:分屏顯示內容

            q命令退出

            用法和man命令的指令相似

            space:向下翻動一頁

            /PATTERN:向下查詢“字符串”的功能

            ?PATTERN:向上查詢“字符串”的功能

               n:重復前一個查詢的方向查詢

               N:重復前一個查詢的反方向查詢

     3.顯示文本前或后行內容

         a.head:取出前N行的內容

           head [OPTION]… [FILE]…

              -c #: 指定獲取前#字節

              -n #: 指定獲取前#行

              -#:指定行數

         b.tail:取出后N行的內容

           tail [OPTION]… [FILE]…

              -c #: 指定獲取后#字節

-n #: 指定獲取后#行

-#:指定行數

-f: 跟蹤顯示文件新追加的內容, 常用日志監控

                ※-f命令的擴展※

                tail -f /var/log/message:查看日志監控文件,缺點當打開文件中會后無法繼續使用命令行編輯器去執行另外的操作

                tail -f /var/log/message &:查看新增的日志文件,當日志的輸出打斷命令行的輸入時,無需重新輸入命令,只需將原來想要執行的命令執行完畢之后即可

      4.按列抽取文本和合并文件

         a.cut:將某些信息的某一段切割出來

             cut [OPTION]… [FILE]…

              -d DELIMITER: 指明分隔符,默認tab

              -f FILEDS:

                  #: 第#個字段

                  #,#[,#]:離散的多個字段,例如1,3,6

                  #-#:連續的多個字段, 例如1-6

                     混合使用:1-3,7

              -c:按字符切割

              –output-delimiter=STRING 指定輸出分隔符  

          顯示文件或STDIN 數據的指定列

                cut -d: -f1 /etc/passwd

                cat /etc/passwd | cut -d: -f7

                cut -c2-5 /usr/share/dict/words

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

            paste [OPTION]… [FILE]…

                -d 分隔符: 指定分隔符,默認用TAB

                -s : 所有行合成一行顯示

                paste f1 f2

                paste -s f1 f2

     5.分析文本的工具

          a.wc:文本數據統計

           計數單詞總數、行總數、字節總數和字符總數;可以對文件或STDIN 中的數據運行

              -l:來只計數行數

              -w:來只計數單詞總數

              -c:來只計數字節總數

              -m:來只計數字符總數

                wc story.txt

                39 237 1901 story.txt

               行數 字數 字符數

          b.sort:整理文本

            文本排序sort:把整理過的文本顯示在STDOUT ,不改變原始文件

            sort [options] file(s)

               -r 執行反方向(由上至下)整理

               -n 執行按數字大小整理

               -f 選項忽略(fold )字符串中的字符大小寫

               -u 選項(獨特,unique )刪除輸出中的重復行

               -t c 選項使用c 做為字段界定符

               -k X 選項按照使用c 字符分隔的X 列來整理能夠使用多次

         c.diff 和patch:比較文件

            diff比較兩個文件之間的區別

            diff foo.conf-broken foo.conf-works

              5c5

              < use_widgets = no

                —

              > use_widgets = yes

              ?  注明第5 行有區別(改變)

            patch:復制對文件改變

            diff 命令的輸出被保存在一種叫做“補丁”的文件中使用 -u 選項來輸出“統一的(unified )”diff 格式文件,最適用于補丁文件。

            patch 命令復制在其它文件中進行的改變(要謹慎使用!)

            適用 -b 選項來自動備份改變了的文件

            diff -u foo.conf-broken foo.conf-works > foo.patch

            patch -b foo.conf-broken foo.patch

      d.uniq 命令:從輸入中刪除重復的前后相接的行

            uniq [OPTION]… [FILE]…

              -c: 顯示每行重復出現的次數;

              -d: 僅顯示重復過的行;

              -u: 僅顯示不曾重復的行;

              連續且完全相同方為重復

              常和sort命令一起配合使用:

              sort userlist.txt | uniq -c

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

(0)
sjsirsjsir
上一篇 2016-08-07
下一篇 2016-08-07

相關推薦

  • 配額、RAID、軟RAID以及LVM管理

    磁盤配額允許控制用戶或者組織對磁盤的使用,它能防止個人或者組織使用文件系統中超過自己使用的部分,或者造成系統完全擁堵。配額必須由root用戶或者具有root權限的用戶啟用和管理。 硬RAID以及軟RAID :RAID是Redundant Array of Independent Disks的簡寫,即獨立硬盤冗余陣列,簡稱磁盤陣列。通過實現的方式不同…

    Linux干貨 2016-11-23
  • 用戶和組管理 第三周

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 who | cut -d' ' -f1 | sort -u who:查看當前已經登陸的所有用戶的詳細信息 cut -d ' ' -f1:以空格為界顯示每行第一列 sort -u :在輸出行中去除重復行。 2、取出最后登錄到當前系…

    Linux干貨 2017-02-13
  • block(data block,directory block)、inode、塊位圖、inode位圖和super block概念詳解

    一.基本概念:      1.block:文件系統中存儲數據的最小單元,ext3文件系統中,創建時默認4k,分為存儲文件數據的data block和存儲目錄數據的directory block      2.inode:又稱“索引節點”,每一個inode對應一個文件或目錄,記錄了…

    Linux干貨 2016-03-04
  • httpd功能配置之虛擬主機

       apache默認使用80端口提供服務,使用主服務器配置的話,一臺物理機只能提供一個站點服務;可以使用虛擬主機方式提供不同的訪問,以實現一臺主機提供多站點服務。    虛擬主機的實現方式有三種:基于端口、基于IP、基于主機名。    一、基于端口的虛擬主機     &nbsp…

    Linux干貨 2016-03-12
  • 淺談Android應用HTTP框架選型

    我們知道,Android應用主要是通過客戶端-服務器的方式進行數據交互,一般在APP開發時可能是一個接口對應一個顯示模塊,這樣的設計會讓客戶端更新時很麻煩。為了解決這個問題,通常的做法是和服務端之間定義協議,設計顯示模式,進而達到實時更新UI界面的目的,增加或刪除顯示模塊時不需要讓用戶手動更新apk,這種方法最常見的就是在做活動或者廣告的時候用到。以我們的優…

    2016-06-22
  • 淺述sed命令

    1、sed工作原理       sed(stream editor)是一種流編輯器,本身也是一個管道命令,可以分析編輯標準輸入(standard input),包括對數據進行替換、刪除、新增、選取特定行等等。運行時以行為單位,每次只處理一行的內容,因此它又被稱為行編輯器。sed還可與正則表達式配合使用,從而簡…

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