西部開源學習筆記BOOK2-《unit 6》

#############################

#### unit6.shell腳本命令 ####

#############################


###########1.diff###########

diff         file  file1            ##比較兩個文件的不同

        -c                          ##顯示周圍的行

        -u                          ##按照統一格式輸出生成補丁

        -r                          ##比較兩個目錄中文件的不同

patch         file  file.patch      ##打補丁

        -b                          ##備份原文件


#########2.grep##########

grep     關鍵字

grep     -i                         ##忽略大小寫

         -n                         ##顯示關鍵字在其文件所在的行號

         -c                         ##顯示過濾結果的個數

         -v                         ##反向過濾(即顯示不包含該關鍵字的行)

         -E "關鍵字1|關鍵字2"       ##過濾多個關鍵字

         -r 目錄                    ##在目錄中查找含有關鍵字的文件(遞歸式搜索,從命名目錄開始)

注意:  ^關鍵字                     ##以關鍵字開頭

        關鍵字$                     ##以關鍵字結尾


eg.grep root -r /etc/ -n ##遞歸式搜索/etc/下的含有root的目錄和文件,並顯示root在文件中的行號


#########3.cut##########

cut                               ##截取字符

cut -d 分隔符                     ##指定分隔符

cut -f 1,7                        ##顯示指定的列

cut -c 1-4                        ##顯示指定的字符


eg.只顯示ifconfig中的ip地址信息

[root@localhost /]# ifconfig eth0 | grep inet |grep -v inet6| cut -d " " -f 10

inet 172.25.254.119

[root@localhost /]# ifconfig eth0 | grep inet |grep -v inet6| awk -F " " '{print $1,$2}'

inet 172.25.254.119

        ##awk的-F表示指定分隔符


########4.sort排序########

sort             ##默認只按第一個字符排序

        -n       ##純數字排序

        -u       ##去除冗餘

        |uniq -c ##去除冗餘並統計冗餘的個數

        -t       ##指定分隔符

        -k       ##指定列

eg:

[root@localhost mnt]# sort -t ":" -k 2 -n file

a:1

a:2

a:2

a:3

a:4

a:5

a:5

a:6

a:6

a:7


########5.uniq#######

sort file |uniq -c ##去冗餘並統計冗餘次數

                -d ##顯示冗餘行

                -u ##顯示唯一行


#######6.tr#######


#######7.sed######

sed 's/原字符/替換字符/g' file     ##替換文件中的字符

sed -e '策略1' -e '策略2' file     ##執行多個策略(這個策略就是's/原字符/替換字符/g')

sed -i file                        ##把轉換後的內容輸出到指定文件

sed '3,5s/原字符/替換字符/g' file  ##把3-5行替換

sed xd file                        ##屏蔽指定行(eg.sed 5d passwd)

sed xp file                        ##複製指定行(eg.sed 5p passwd)

sed -n xp file                     ##只顯示指定行(eg.sed -n 5p passwd)


注意:當要執行顯示多個指定行時,命令格式爲sed -ne xp -ne xp

eg:sed -ne 5p -ne 7p file


#########8.awk##########


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章