文本處理工具筆記

1.文件查看相關命令

     (1)cat命令

     cat [OPTION]… [FILE]…

     -E:顯示行結束符

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

     -A:顯示所有控制符

     -b:僅對非空行編號

     -s:壓縮連續的空行成一行

(2)tac命令

    倒序顯示文件內容

(3)rev命令

    rev f2反向顯示文件的每一行內容

(4)more命令

     分頁查看文件

     more [OPTION…] FILE…

     -d:顯示翻頁及退出提示

     !COMMAND,執行完接著看文檔

     支持查找等,但是僅能向下查找

(5)less:一頁頁地查看文件或STDIN輸出

     查看時有用的命令包括:

     /文本 搜索文本

     n/N 跳到下一個或上一個匹配項

     man命令中使用的分頁器也是less

    

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

(1)head命令

     head [OPTION]… [FILE]…

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

     -n #:指定獲取前#行

     -#  :指定行數

(2)tail命令

     tail [OPTION]… [FILE]…

     -c #:指定獲取后#行

     -n #:指定獲取后#行

     -#  :指定獲取后#行

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

     logger "this is a log test" :命令logger是觸發產生日志的命令

     tail -n 0 -f /var/log/messages & 可邊工作邊動態顯示日志變化情況

3.文本抽取和合并命令

(1)cut [OPTION]… [FILE]…

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

     -f FILED:

     #:第#個字段

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

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

     混合使用:1-3,7

     -c 按字符切割

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

     ifconfig中取

     ip:head -2 f2|tail -1 |cut -d ':' -f 2|cut -d ' ' -f 1

     CentOS7:ifconfig|head -2|tail -1|cut -d' ' -f 10

     取df中磁盤的使用率

     df |tr -s ' '|cut -d ' ' -f5|tr -d '%'

     df |tr -s ' '|tr ' ' ':'|cut -d':' -f5|tr -d "%"

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

     cut -d: -f1 /etc/passwd

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

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

  (2)paste文本合并命令

     paste [OPTION]… [FILE]…

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

     -s:所有行合并成一行

     paste f1 f2

     paste -s f1 f2

4.分析文本的工具

(1)搜集文本統計數據wc

     直接執行wc會顯示文件的行數,字符數,單詞數

     wc -l:顯示文件行數

     wc -w:顯示文件的單詞數

     wc -c:顯示文件的字節數

     wc -m:統計字符

(2)文本排序sort

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

     sort f2默認排序

     cat f1 |sort -n -t:-k3

     -n純數字排序

     -r倒序排序

     -t指定分隔符

     -k指定排序位置

     -u刪除重復行

(3)uniq命令

     從輸入中刪除重復的前后相接的行

     uniq [OPTION]… [FILE]…

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

     -d:僅顯示重復過的行

     -u:僅顯示不重復的行

     在uniq中把連續且完全相同的才認為是重復

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

     sort userlist.txt |uniq -c

(4)diff比較文件

     比較兩個文件之間的區別

     diff f1 f2

     diff 命令的輸出被保存在一種叫做‘補丁’的文件中

     使用-u選項來輸出‘統一的’diff格式文件,最適用于補丁文件。

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

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

     diff -u f1 f2 > f.patch

     patch -b f1 f.patch 

(5)練習:

1、找出ifconfig命令結果中本機的所有IPv4地址

ifconfig|tr -cs '[0-9].' '\n'|sort -ut '.' -k3

? 2、查出分區空間使用率的最大百分比值

df |tr -s ' '|tr ' ' ':'|cut -d':' -f5|tr -d "%"|sort -n |tail -1

? 3、查出用戶UID最大值的用戶名、UID及shell類型

cat /etc/passwd|sort -n -t: -k3|tail -1|cut -d: -f1,3,7|tr ':' '\n'

? 4、查出/tmp的權限,以數字方式顯示

stat /tmp|head -4|tail -1|cut -d'(' -f2|cut -d'/' -f1

? 5、統計當前連接本機的每個遠程主機IP的連接數,并按從大到小排序

netstat -nt|tr -s ' '|cut -d' ' -f5|sort|uniq -c|cut -d' ' -f 7|sort -n

5.grep文本過濾命令

     (1)grep:Global search REgular expression and Print out the line

     作用:文本搜索工具,根據用戶指定的“模式”對目標文本逐行進行匹配檢查,打印匹配到的行;

     模式:由正則表達式字符及文本字符所編寫的過濾條件

     (2)grep [OPTIONS] PATTERN [FILE…]

     grep root /etc/passwd

     grep "$USER" /etc/passwd 

     grep '$USER' /etc/passwd 這個強引用會使$符號無效

     grep `whoami` /etc/passwd

(3)grep命令選項

     –color=auto:對匹配到的文本著色顯示

     -v:顯示不能夠被pattern匹配到的行

     -i:忽略字符大小寫

     -n:顯示匹配的行數

     -c:統計匹配的行數

     -o:僅顯示匹配到的字符串

     -q:靜默模式,不輸出任何信息

     -A # :after后#行

     -B #:before前#行

     -C #:context,前后各#行

     -e:實現多個選項之間的邏輯or關系

     grep -e 'cat' -e 'dog' file

     -w:整行匹配整個單詞

     -E:使用擴展表達式

     grep -E=egrep

6.正則表達式

     (1)REGEXP:由一類特殊字符及文本字符所編寫的模式,其中有些字符(元字符)不表示字符字面意義,而表示控制或通配的功能。

     程序支持:grep,vim,less,nginx等

     分類:

     基本正則表達式:BRE

     擴展正則表達式:ERE

     grep -E ,egrep

     正則表達式引擎:

     采用不同算法,檢查處理正則表達式的軟件模塊

     元字符分類:字符匹配、匹配次數、位置錨定、分組

     獲得更多關于正則表達式的信息:man 7 regex

     (2)基本正則表達式元字符

     字符匹配:

     .:匹配任意單個字符

     []:匹配指定范圍內的任意單個字符

     [^]:匹配指定范圍外的任意單個字符

     [:digit:]、[:lower:]、[:upper:]、[:alpha:]、[:alnum:]、[:punct:]、[:space:]

     匹配次數:

     用在要指定次數的字符后面,用于指定前面的字符出現的次數

     *:匹配前面的字符任意次,包括0次

     貪婪模式:盡可能長的匹配

     .*:任意長度的任意字符

     \?:匹配其前面的字符0或1次

     \+:匹配其前面的字符至少1次

     \{n\}:匹配前面的字符N次

     \{m,n\}:匹配前面的字符至少m次,至多n次

     \{,n\}:匹配前面的字符至多n次

     \{n,\}:匹配前面的字符至少n次

     位置錨定

     定位出現的位置

     ^:行首錨定,用于模式的最左側

     $:行尾錨定,用于模式的最右側

     ^PATTERN$:用于模式匹配整行

     ^$:空行

     ^[[:space:]]*$:空白行

     \<或\b:詞首錨定,用于單詞模式的左側

     \>或\b:詞尾錨定;用于單詞模式的右側

     \<PATTERN\>:匹配整個單詞

    

     分組:

     \(\):將一個或多個字符捆綁在一起,當做一個整體進行處理,如:\(root\)\+

     分組括號中的模式匹配到的內容會被正則表達式的引擎記錄于內部的變量中,這些變量的命名方式為

     :\1,\2,\3,…

     \1:從左側起,第一個左括號以及與之匹配的右括號之間的模式所匹配到的字符

     \(string\+\(string\)*\)

     \1:string\+\(string2\)*

     \2:string2

     后向引用:引用前面的分組括號中的模式所匹配字符(而非模式本身)

     示例:~]# grep "^\(.*\b\).*\/\1$" /etc/passwd

     sync:x:5:0:sync:/sbin:/bin/sync

     shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

     halt:x:7:0:halt:/sbin:/sbin/halt

相關練習:

1、顯示/proc/meminfo文件中以大小s開頭的行;(要求:使用兩種方式)

    ~]# cat /proc/meminfo | grep -i '^S'    
    SwapCached:            0 kB
    SwapTotal:       2097148 kB
    SwapFree:        2097148 kB
    Shmem:               240 kB
    Slab:              64448 kB
    SReclaimable:      38424 kB
    SUnreclaim:        26024 kB
    ~]# cat /proc/meminfo | grep -e '^s' -e '^S'
    SwapCached:            0 kB
    SwapTotal:       2097148 kB
    SwapFree:        2097148 kB
    Shmem:               240 kB
    Slab:              64448 kB
    SReclaimable:      38424 kB
    SUnreclaim:        26024 kB

? 2、顯示/etc/passwd文件中不以/bin/bash結尾的行

        ~]# cat /etc/passwd |grep -v '/bin/bash'    
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync

? 3、顯示用戶rpc默認的shell程序

    ~]# cat /etc/passwd|grep '\brpc\b' |cut -d : -f 7        
     /sbin/nologin

? 4、找出/etc/passwd中的兩位或三位數

    ~]# cat /etc/passwd|grep '\b[[0-9][0-9][0-9]\?\b'    
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
    ~]# cat /etc/passwd|grep '\b[[0-9]\{2,3\}\b'
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

? 5、顯示/etc/grub2.cfg文件中,至少以一個空白字符開頭的且后面存非空白字符的行

    ~]# cat /etc/grub2.cfg |grep '^[[:space:]]\+[^[:space:]]'    
     load_env
      set default="${next_entry}"
      set next_entry=

? 6、找出“netstat -tan”命令的結果中以‘LISTEN’后跟任意多個空白字符結尾的行

    ~]# netstat -tan|grep 'LISTEN[[:space:]]*'    
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
    tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN
    tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN
    tcp6       0      0 :::22                   :::*                    LISTEN
    tcp6       0      0 ::1:631                 :::*                    LISTEN
    tcp6       0      0 ::1:25                  :::*                    LISTEN
    tcp6       0      0 ::1:6010                :::*                    LISTEN
    [root@centos7 ~]#

 7、添加用戶bash、testbash、basher以及nologin(其shell為/sbin/nologin),而后找出/etc/passwd文件中用戶名同shell名的行

    ~]# cat /etc/passwd|grep "^\(.*\b\).*/\1$"    
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    bash:x:1003:1005::/home/bash:/bin/bash
    nologin:x:1006:1008::/home/nologin:/sbin/nologin
    ~]# cat /etc/passwd|grep -E '^(.*):.*/\1$'
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    bash:x:1003:1005::/home/bash:/bin/bash
    nologin:x:1006:1008::/home/nologin:/sbin/nologin

7.egrep及擴展的正則表達式

     egrep=grep -E

     egrep  [OPTIONS] PATERN [FILE…]

     擴展正則表達式的元字符

     字符匹配:

     .:任意單個字符

     []:指定范圍的字符

     [^]:不在指定范圍的字符

     次數匹配:

     *:匹配前面字符任意次

     ?:0或1次

     +:1次或多次

     {m}:匹配m次

     {m,n}:至少m,至多n次

     位置錨定:

     ^:行首

     $:行尾

     \<,\b:詞首

     \>,\b:詞尾

     分組:

     ()

     后向引用:\1,\2,…

     或者:

     a|b

     C|cat:C或cat

     (C|c)at:Cat或cat

練習題:

   1、顯示三個用戶root、mage、wang的UID和默認shell

        ~]# cat /etc/passwd|grep -E "^(root|mage|wang)"|cut -d: -f3,7        
        0:/bin/bash
        1000:/bin/bash
        1009:/bin/bash

?  2、找出/etc/rc.d/init.d/functions文件中行首為某單詞(包括下劃線)后面跟一個小括號的行

    ~]# cat /etc/rc.d/init.d/functions |grep -E '^([[[:alpha:]]+|_])\(\)'    
    checkpid() {
    daemon() {
    killproc() {
    pidfileofproc() {
    pidofproc() {
    status() {
    success() {
    failure() {
    passed() {
    warning() {
    action() {
    strstr() {

  3、使用egrep取出/etc/rc.d/init.d/functions中其基名

        ~]# echo "/etc/rc.d/init.d/functions" | egrep -o '[^/]+/?$'        
        functions

  4、使用egrep取出上面路徑的目錄名

        ~]# echo "/etc/rc.d/init.d/functions" | egrep -o '/.*/'        
        /etc/rc.d/init.d/

  5、統計以root身份登錄的每個遠程主機IP地址的登錄次數

    ~]# who |grep "^root"|egrep -o "\(.*\)"|cut -d ')' -f1|cut -d'(' -f2|sort|uniq -c    
    2 10.1.250.58

  6、利用擴展正則表達式分別表示0-9、10-99、100-199、200-249、250-255

    0-9:[0-9]; 10-99:[1-9][0-9] ; 100-199:1[0-9]{2};200-249:2[0-4][0-9];250-255:25[0-5]

  7、顯示ifconfig命令結果中所有IPv4地址

    ~]# ifconfig|egrep -o '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])'    
    10.1.249.36
    10.1.255.255
    255.255.0.0
    127.0.0.1
    255.0.0.0

   8.sed文本處理工具

     Stream EDitor,行編輯器

     sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為

     “模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著

     處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有改變,除非你使用重定向存儲輸出

     sed主要用來自動編輯一個或多個文件,簡化對文件的反復操作,編寫轉換程序等

    

     用法:

     sed [option]… 'script' inputfile…

    常用選項:

     -n:不輸出模式空間內的自動打印

     -e:多點編輯

     -f:/path/to/script_file:從指定文件中讀取編輯腳本(文件中寫的是2p打印第二行)

     -r:支持使用擴展正則表達式

     -i:原處編輯(會真正改變源文件)sed -i.bak '2d' f1 刪除的時候先備份

     script:

     ‘地址命令’

     地址定界:

     (1)不給地址:對全文進行處理

     (2)單地址:

     #:指定的行

     /pattern/:被此模式所能夠匹配到的每一行

     (3)地址范圍

     #,#

     #,+#

     /pat1/,/pat2/

     #,/pat1/

     (4)~:步進

     1~2 奇數行

     2~2 偶數行

  編輯命令:

     d:刪除模式空間匹配到的行

     p:顯示模式空間中的內容

     a \text:在行后面的下一行中追加文本;支持使用\n實現多行追加

     i \text:在行前面插入文本;支持使用\n實現多行插入

     c \text:替換行為單行或多行文本

     w /path/to/somefile:保存模式匹配的行至指定文件

     r /path/from/somefile:讀取指定文件的文本至模式空間中匹配到的行后

     =:為模式空間中的行打印行號

     ?。耗J娇臻g中匹配行取反處理

     s///:查找替換,支持使用其它分隔符號:s@@@,s###

     替換標記:

     g:行內全局替換

     p:顯示替換成功的行

     w /path/to/somefile:將替換成功的行保存至文件中

  sed命令相關示例:

     (1)

        ~]# sed '2p' /etc/passwd #打印第二行,由于sed本身處理會打印,故第二行打印兩次
    	root:x:0:0:root:/root:/bin/bash
    	bin:x:1:1:bin:/bin:/sbin/nologin
    	bin:x:1:1:bin:/bin:/sbin/nologin
    	daemon:x:2:2:daemon:/sbin:/sbin/nologin

     (2)

            ~]# sed -n '2p' /etc/passwd  #-n僅顯示匹配到的行,即第二行    
            bin:x:1:1:bin:/bin:/sbin/nologin

     (3)

	~]# sed -n '1,4p' /etc/passwd #打印1到第四行
    	root:x:0:0:root:/root:/bin/bash
    	bin:x:1:1:bin:/bin:/sbin/nologin
    	daemon:x:2:2:daemon:/sbin:/sbin/nologin
    	adm:x:3:4:adm:/var/adm:/sbin/nologin

     (4)

	~]# sed -n '/root/p' /etc/passwd  #打印行中帶root的行
    	root:x:0:0:root:/root:/bin/bash
    	operator:x:11:0:operator:/root:/sbin/nologin

     (5)

        ~]# sed -n '2,/root/p' /etc/passwd #打印第二行向后到行中帶root的行
    	bin:x:1:1:bin:/bin:/sbin/nologin
    	daemon:x:2:2:daemon:/sbin:/sbin/nologin
    	adm:x:3:4:adm:/var/adm:/sbin/nologin
    	lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    	sync:x:5:0:sync:/sbin:/bin/sync
    	shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    	halt:x:7:0:halt:/sbin:/sbin/halt
    	mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    	uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
    	operator:x:11:0:operator:/root:/sbin/nologin

     (6)

	~]# sed -n '/^$/=' /etc/fstab #顯示空行的行號
    	1

     (7)

        ~]# sed -n -e '/^$/p' -e '/^$/=' /etc/fstab #一次執行多個操作,用-e分別區分每個操作
    
    	1

     (8)

        ~]# sed '/root/a\superman' /etc/passwd #在匹配到的行的下方追加內容
    	root:x:0:0:root:/root:/bin/bash
    	superman

     (9)

	~]# sed '/root/i\superman' /etc/passwd #在匹配行的上一行添加
    	superman
    	root:x:0:0:root:/root:/bin/bash
    	bin:x:1:1:bin:/bin:/sbin/nologin

     (10)

        ~]# sed '/root/c\superman' /etc/passwd #替換匹配到的行中的內容
    	superman
    	bin:x:1:1:bin:/bin:/sbin/nologin
    	daemon:x:2:2:daemon:/sbin:/sbin/nologin

練習題:

     1、刪除/etc/grub2.conf文件中所有以空白開頭的行行首的空白字符

          ~]# cat /etc/grub2.cfg |sed 's/^[[:space:]]\+//'

     2、刪除/etc/fstab文件中所有以#開頭,后面至少跟一個空白字符的行的行首的#和空白字符

          ~]# cat /etc/fstab |sed -r 's@^#[[:space:]]+@@'

     3、在/root/install.log每一行行首增加#號

          ~]# cat /root/install.log|sed 's@^@#@'

    4、在/etc/fstab文件中不以#開頭的行的行首增加#號

          ~]# cat /etc/fstab |sed "s@^[^#]@#&@"

   5、處理/etc/fstab路徑,使用sed命令取出其目錄名和基名

        取目錄名:

        ~]# echo "/etc/" |sed -r "s@(.*/)[[:alnum:]]+/?@\1@"

        取基名:

        ~]# echo "/etc/" |sed -r "s@.*/([[:alnum:]]+/?)@\1@"

?     6、利用sed 取出ifconfig命令中本機的IPv4地址

            ~]# ifconfig |sed -n '/Bcast/p'|sed -r 's/.*:(.*) B.*/\1/'    
            10.1.249.36

?      7、統計centos安裝光盤中Package目錄下的所有rpm文件的以.分隔倒數第二個字段的重復次數

         Packages]# ls | sed -r 's/.*\.([^\.]+)\.rpm/\1/'|sort|uniq -c        
         1 _1
         1 1asfh
          1561 i686
          1448 noarch
         1 TRANS.TBL
          3687 x86_64

sed的高級編輯命令:

     h:把模式空間中的內容覆蓋至保持空間中

     H:把模式空間中的內容追加至保持空間中

     g:從保持空間取出數據覆蓋至模式空間

     G:從保持空間中取出內容追加到模式空間中

     x:把模式空間中的內容與保持空間中的內容進行互換

     n:讀取匹配到的行的下一行覆蓋至模式空間

     N:追加匹配到的行的下一行至模式空間

     d:刪除模式空間中的行

     D:刪除當前模式空間開端至\n的內容(不再傳至標準輸出),放棄之后的命令,但是對

     剩余模式空間重新執行sed

sed高級編輯的示例

    sed -n 'n;p' FILE #顯示偶數行,讀第一行后把第二行讀入把1覆蓋,此時僅剩2,依次類推

    ? sed '1!G;h;$!d' FILE #倒序排列

     sed '$!N;$!D' FILE #僅顯示最后兩行     

    ? sed '$!d' FILE #顯示最后一行

    ? sed ‘G’ FILE #每行后面加一行空格

    ? sed ‘g’ FILE #把文件中的每行替換為空行

    ? sed ‘/^$/d;G’ FILE #每行后面加一行空格

    ? sed 'n;d' FILE #顯示奇數行 

    ? sed -n '1!G;h;$p' FILE  #倒序顯示

    

原創文章,作者:提著醬油瓶打醋,如若轉載,請注明出處:http://www.www58058.com/32335

(0)
提著醬油瓶打醋提著醬油瓶打醋
上一篇 2016-08-10
下一篇 2016-08-10

相關推薦

  • Linux普通權限及特殊權限講解

    1.文件權限 文件權限主要是針對三類對象進行定義的:                          &nb…

    學員作品 2016-08-05
  • Linux文本處理工具sed

    sed工作原理:sed從文件中讀取出來一行,并不會直接進行編輯處理而是會放在自己的模式空間內進行處理,處理的結果將會送到標準輸出,默認情況下sed可以對每行文本進行處理,也可以讓sed處理符合條件的行,我們可以利用正則表達式做文本過濾,模式空間有兩種輸出結果,一種是可以匹配到的,會根據編輯要求進行處理,例如刪除,過濾字符串。另外一種則是匹配失敗的,會直接進行…

    學員作品 2016-08-10
  • 馬哥團隊帶你揭秘互聯網巨頭公司—騰訊

    馬哥團隊帶你揭秘互聯網巨頭公司—騰訊 前幾日,馬哥團隊成員受邀,到國內互聯網巨頭–騰訊參觀和交流,并用照片記錄下了一些精彩瞬間,這里分享給大家。(希望大家多多努力,早日進入頂級公司) 剛到騰訊大廈,上到公司門口,是騰訊的前臺,(沒想到前臺是個男同胞) 進來后,騰訊的照片墻,十分有質感 訪客必須先登記,會給發放一個騰訊的訪客門牌。 公司…

    學員作品 2015-04-14
  • 文本處理工具sed及文本編輯器vim課程作業

    文本處理工具sed課程作業     1、刪除/etc/grub2.conf文件中所有以空白開頭的行行首的空白字符         sed -n 's@^[[:space:]]\+@@p' /etc/grub2.cfg &…

    學員作品 2016-08-10
  • 馬哥linux特推出“你學習,我買單—免費公開課”的活動

    馬哥linux特推出“你學習,我買單—免費公開課”的活動 為了感謝廣大linux愛好者對馬哥教育的一路陪伴和支持。時值五一佳節來臨之際,馬哥linux特推出“你學習,我買單—免費公開課”的活動,本期分享主題為:“Linux運維架構師成長必經之路”,后期我們將會不斷的推出更多免費精彩課程和大家一起分享, 具體報名方式以及問題咨詢,請加入…

    學員作品 2015-04-22
  • sed命令詳解

    sed命令:  Stream EDitor, 行編輯器  sed是一種流編輯器,它是文本處理中非常中的工具,能夠完美的配合正則表達式使用,功能不同凡響。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重…

    2016-08-10
欧美性久久久久