好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Shell腳本學習指南之查找與替換介紹

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

熱門標簽:昆明電話外呼系統好么 陜西便宜電銷機器人軟件 電話機器人每天搜索多少次 外呼系統一天耗費多少流量 衡水外呼線路解決 艾比利外呼系統 免費門店地圖標注注冊入駐 杞縣地圖標注app 海口智能語音電銷機器人好用嗎

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/\\/\bsol;/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

標簽:營口 昌都 泰安 臨滄 南京 宿遷 西寧 海口

巨人網絡通訊聲明:本文標題《Shell腳本學習指南之查找與替換介紹》,本文關鍵詞  Shell,腳本,學習指南,之,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Shell腳本學習指南之查找與替換介紹》相關的同類信息!
  • 本頁收集關于Shell腳本學習指南之查找與替換介紹的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 免费观看又色又爽又黄的网站| 她用高跟鞋鞋底碾着我的舌头| 女女互慰下面吃奶视频在线看| 丰满的岳妇被粗大爽ⅩXoo小说| 国产欧美一区二区三区精华液好吗 | 女人zozozo与禽交| 无敌神马影视影院在线| 亚洲欧美日韩中文字幕在线一区| 亚洲 日韩 中文字幕 制服| 校园春色国产| 国产一级毛片免| 国产一级婬女AAA片兰花影视| 伸进内裤揉到高潮呻吟动漫图片| 欧美人妖大啪啪| 亚洲同志男男gay1069| 欧美精品一区在线发布| 娇软顶弄h1v1| 国产精品一线二线三线区别在哪里| 沈樵作品17部在线播放| 免费亚洲黄色| 精品无人区乱码1区2区| 亚州免费| 美女gif趴跪式动态图27bao| 优等生被C的日常H高H| 91最新网址| 成人做爰A片免费看视美女图片| 亚洲AV天堂AV在线成人播放| 亚洲不卡在线观看| 很黄很色动态图| 国产福利资源网在线观看| 成年黄大片| 国产人妻久久久久久精品动图 | 纲手被吸乳羞羞网站视频| 少妇被??到高潮出水| 久久99精品久久久久久野外| 真实国产乱视频国语| 国产一级特黄| 狂野小农民免费播放完整版高清| 老板趴在娇妻身上疯狂耸动| 亚洲精品巨爆乳无码大乳巨瑜伽裤 | 秋霞电影免费理论久久|