亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Linux Shell > 正文

Shell腳本學習指南之查找與替換介紹

2020-07-27 19:24:51
字體:
來源:轉載
供稿:網友

3.1 查找文本
grep:使用POSIX定義的基本正則表達式(BRE)。
egrep:使用擴展正則表達式(ERE)。
fgrep:快速grep。使用優化的算法,匹配固定字符串而非正則表達式。

1992 POSIX標準將這三個改版整合成一個grep程序。

$ who | grep -F austen
使用-F選項查找固定字符串。事實上,只要匹配的模式里未含有正則表達式的meta字符,
則grep默認行為模式就等同于使用了-F。

3.2.6 在文本文件里進行替換
一般來說,執行文本替換的正確程序應該是sed - 流編輯器。
sed 's/:.*//' /etc/passwd |     刪除第一個冒號之后的所有東西
sort -u   排序列表并刪除重復部分

任何可顯示的字符都能作為定界符。

復制代碼 代碼如下:

sed 's;/home/tolstoy/;/home/lt/;'
sed 's/////\/g'

用-e和-f選項,不用將多個sed通過管道串起來,就可以一次替換多個。

復制代碼 代碼如下:

$ sed -e 's/foo/bar/g' -e 's/chicken/cow/g' file1.xml > file2.xml

$ cat fixup.sed
s/foo/bar/g
s/chicken/cow/g
...
$ sed -f fixup.sed file1.xml > file2.xml

3.2.8 sed的運作
命令行上的每個文件名會依次打開與讀取。如果沒有文件,則使用標準輸入。
sed讀取每個文件,一次讀一行,將讀取的行放到內存的一個區域(模式空間)。
所有編輯上的操作都會應用到模式空間的內容,當所有操作完成后,sed會將模式
空間的最后內容打印到標準輸出,再回到開始處,讀取另一個輸入行。

3.3 字段處理
用空格(制表符)或特定的定界符(如冒號)。
#字符起始的行表示注釋,軟件必須可忽略這樣的行才行。

以定界符分隔字段的最好例子就是/etc/passwd了:一行表示一個用戶,每個字段以冒號隔開。
該文件含有7個字段:
tolstoy:x:2076:10:Leo Tolstoy:/home/tolstoy:/bin/bash
1.用戶名稱:2.加密后密碼:3.用戶ID:4.用戶組ID:5.姓名:6.根目錄:7.登錄的Shell。

3.3.2 使用cut選定字段

復制代碼 代碼如下:

$ cut -d : -f 1,5 /etc/passwd
root:root
...
tolstoy:Leo Tolstoy
$ cut -d : -f 6 /etc/passwd
/root
...
/home/tolstoy

3.3.3 使用join連接字段
以一個共同的鍵值(主字段)將多個文件結合在一起。
$ cat sales
#業務員 數據量
joe     100
jane    200
herman 150
chris    300

$ cat quotas
#業務員 配額
joe     50
jane    75
herman 80
chris    95

復制代碼 代碼如下:

#! /bin/sh
# merge-sales.sh
# 刪除注釋并排序數據文件
sed '/^#/d' quotas | sort > quotas.sorted
sed '/^#/d' sales   | sort > sales.sorted
# 以第一個鍵值作結合
join quotas.sorted sales.sorted
# 刪除緩存文件
rm quotas.sorted sales.sorted

3.3.4 使用awk重新編排字段

awk程序基本架構:pattern { action }
pattern通常是由斜杠括起來的ERE,action通常是一個明了的print語句。
省略pattern則會對每一條輸入記錄執行action,省略action則等同于{ print }。

awk自動將各個記錄分為字段,并將每條記錄內字段數目存儲到內建變量NF。
默認以空白分隔,還可以將FS變量設置為一個不同的值。$加數字表示字段值。
awk '{ print $1 }'               打印第1個字段
awk '{ print $2, $5 }'          打印第2與第5個字段
awk '{ print $1, $NF }'        打印第一個與最后一個字段
awk 'NF > 0 { print $0 }'     打印非空行
awk 'NF > 0'                     同上

awk -F : '{ print $1, $5 }' /etc/passwd     設置字段分隔字符,-F選項自動設置FS變量。
root root
...
tolstoy Leo Tolstoy

記得在print的參數間用逗號隔開,否則awk將連接相鄰的所有值。
awk -F: '{ print "User" $1 "is really" $5 }' /etc/passwd
Userrootis reallyroot
...
Usertolstoyis reallyLeo Tolstoy

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
蜜臀久久99精品久久久久久宅男| 亚洲精品一区av在线播放| 国产综合久久久久| 乱亲女秽乱长久久久| 国产精品入口免费视| 亚洲欧美日韩区| 久久中文字幕视频| 亚洲性猛交xxxxwww| 成人福利免费观看| 国产91在线播放九色快色| 国产亚洲一区精品| 91av在线精品| 久久久亚洲影院你懂的| 91视频国产高清| 性欧美xxxx视频在线观看| 欧美大片在线看| 精品爽片免费看久久| www.午夜精品| 欧美一级电影免费在线观看| 国产精品18久久久久久首页狼| 清纯唯美日韩制服另类| 8090理伦午夜在线电影| 欧美一级大胆视频| 国产玖玖精品视频| 国产欧美在线看| 亚洲偷熟乱区亚洲香蕉av| 久久精品成人欧美大片| 最近2019好看的中文字幕免费| 欧美精品生活片| 91在线观看免费高清| 色偷偷888欧美精品久久久| 亚洲国产精品资源| 日韩精品福利在线| 亚洲成人av中文字幕| 久久九九精品99国产精品| 亚洲天堂男人的天堂| 国产成人综合精品在线| 一本大道亚洲视频| 久久综合久久八八| 91在线免费网站| 国产精品99导航| 欧美激情第1页| 一区二区欧美激情| 亚洲成人黄色网| 国产精品久久97| 久久久久久久久久国产精品| 91免费版网站入口| 欧美—级高清免费播放| 狠狠操狠狠色综合网| 欧美极品少妇xxxxⅹ裸体艺术| 国产亚洲精品久久| 亚洲第一偷拍网| 久久色精品视频| 久久久www成人免费精品张筱雨| 亚洲大尺度美女在线| 伦理中文字幕亚洲| 成人黄色激情网| 国产精品一久久香蕉国产线看观看| 91国产精品视频在线| 久久国产精品久久国产精品| 久久久999国产| 日韩av中文字幕在线免费观看| 中文字幕亚洲欧美在线| 色综合久久久久久中文网| 欧美日韩国产一区二区三区| 国产精品高潮在线| 亚洲老头同性xxxxx| 97视频免费看| 国产精品爱啪在线线免费观看| 精品一区二区三区电影| 伊人久久综合97精品| 777国产偷窥盗摄精品视频| 成人激情视频在线观看| 成人性生交xxxxx网站| 亚洲成人激情在线| 亚洲最大的av网站| 最新69国产成人精品视频免费| 亚洲天堂网站在线观看视频| 日韩欧美a级成人黄色| 欧美激情综合亚洲一二区| 精品五月天久久| 992tv在线成人免费观看| 国产精品入口免费视频一| 亚洲精品少妇网址| 最近2019年好看中文字幕视频| 欧美成人免费网| 久久99久久99精品免观看粉嫩| 一区二区欧美亚洲| 亚洲国产美女精品久久久久∴| 国产在线999| 日韩欧美在线播放| 亚洲精品国偷自产在线99热| 欧美黄色小视频| 茄子视频成人在线| 国产亚洲aⅴaaaaaa毛片| 日韩高清免费在线| 日韩资源在线观看| 亚洲欧美变态国产另类| 国产成人啪精品视频免费网| 久久成人综合视频| 日韩在线欧美在线国产在线| 97色在线视频观看| 高清欧美性猛交| 亚洲综合日韩中文字幕v在线| 国产婷婷色综合av蜜臀av| 国产精品91免费在线| 97香蕉久久夜色精品国产| 欧美老女人在线视频| 亚洲激情在线观看视频免费| 成人97在线观看视频| 国产欧美日韩免费| 国产91在线播放精品91| 国产精品美女免费视频| 日韩精品欧美国产精品忘忧草| 亚洲人成在线免费观看| 久久人人爽人人爽人人片av高请| 久久久久久亚洲精品| 欧美激情第99页| 欧美精品免费播放| 538国产精品一区二区免费视频| 日韩极品精品视频免费观看| 国产97在线观看| 亚洲第一精品夜夜躁人人爽| 色狠狠av一区二区三区香蕉蜜桃| 一区二区在线免费视频| 91精品久久久久久久久久另类| 欧美日韩免费区域视频在线观看| 亚洲第一二三四五区| 97视频免费在线观看| 欧美午夜www高清视频| 51精品国产黑色丝袜高跟鞋| 日韩女优人人人人射在线视频| 精品少妇一区二区30p| 国产免费一区二区三区在线观看| 久久精品国产精品| 亚洲精品乱码久久久久久按摩观| 国内精品久久久久久中文字幕| 亚洲电影免费观看高清完整版在线观看| 91精品国产91久久久| 中文字幕在线看视频国产欧美在线看完整| 亚洲黄色免费三级| 色综合久久精品亚洲国产| 欧美成人免费va影院高清| 日韩在线视频播放| 精品国产乱码久久久久久虫虫漫画| 91精品国产91久久| 欧美在线视频免费播放| 国产精品免费一区二区三区都可以| 久久久久久久久久久国产| 亚洲国产精品va| 欧美大全免费观看电视剧大泉洋| 久久久久久久久久久久久久久久久久av| 午夜精品一区二区三区视频免费看| 欧美乱大交做爰xxxⅹ性3| 亚洲第一网中文字幕| 国产精品劲爆视频| 日韩久久精品电影| 日韩精品在线观| 不卡伊人av在线播放| 欧美日韩福利在线观看| 久久精品国产v日韩v亚洲| 久热爱精品视频线路一| 欧美精品videos另类日本| 91青草视频久久|