引言
成都網(wǎng)絡(luò)公司-成都網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司十余年經(jīng)驗成就非凡,專業(yè)從事網(wǎng)站設(shè)計、網(wǎng)站制作,成都網(wǎng)頁設(shè)計,成都網(wǎng)頁制作,軟文營銷,1元廣告等。十余年來已成功提供全面的成都網(wǎng)站建設(shè)方案,打造行業(yè)特色的成都網(wǎng)站建設(shè)案例,建站熱線:18982081108,我們期待您的來電!我們不生產(chǎn)水,我們只是大自然的搬運工。
我不是在做廣告,我只是整理sed的時候突然想起了這句話。因為我接下來幾乎就是個搬運工了。沒辦法,前人總結(jié)的實在是太精辟了。思路清晰,一氣呵成。我瀏覽了下,就讓我有種感慨,sed也就這么點東西。說大話了,請忽略。
總之一句話,這篇純手打,你也可以說是抄的,我承認,但是能把他變成自己的怎么都成!要站在別人的肩膀上,才能看的更遠。廢話不多說,上干貨。
參考資料
man sed 或者 sed --help
《unix shell 范例精解》
http://www.gnu.org/software/sed/
sed,a stream editor
上面是GRU官方文檔的標題:sed,一個流編輯器,非交互式的編輯器。
sed的工作過程
文本文件--->sed的模式空間(緩存區(qū))--->顯示輸出
sed逐行處理文件(或輸入),將當前處理的行放在sed模式空間里,在模式空間里處理完后顯示輸出,并刪除模式空間里的內(nèi)容。然后將下一行讀入模式空間,處理并輸出。
我們發(fā)現(xiàn),sed處理的是讀入模式空間里的文件副本,不是原文件。所以使用sed編輯文件不會對原文件修改和破壞。
sed的工作模式
正則表達式 | sed -n '/RE/p' filename |
定址 | 地址可以是數(shù)字,正則表達式或者二者結(jié)合。 |
正則表達式元字符
通用 | http://1076546426.blog.51cto.com/9959876/1702784 |
& | 保存查找串以便在替換串中引用 |
sed命令與選項
命令 | 功能 | 命令 | 功能 |
a\ | 在當前行之后追加文本 | ||
i\ | 在當前行之前插入文本 | ||
r | Append text read from filename.(從文件中讀入并追加文本) | ||
c\ | 用新文本替換當前行中的文本 | ||
d | 刪除行 | ||
h/H | Copy/append pattern space to hold space. 將模式空間的內(nèi)容復(fù)制/追加到暫存緩沖區(qū)。 | ||
g/G | Copy/append hold space to pattern space. | ||
x | Exchange the contents of the hold and pattern spaces. | ||
l | 列出非打印字符 | ||
n/N | Read/append the next line of input into the pattern space. | ||
p | Print the current pattern space. | ||
s###g | 全局替換,#為間隔符 | ||
w | Write the current pattern space to filename. | ||
y | y/source/dest/ 將字符串轉(zhuǎn)換為另一個字符 | ||
選項 | 功能 |
-n | 取消默認輸出 |
-e | 允許多項編輯 |
-f | 指定sed腳本文件 |
-i | 修改原文件 |
-r | use extended regular expressions in the script. |
實例
命令 | 功能 |
sed -n '/word/p' filename | 將filename中所有包含word的行打印的屏幕上 |
sed '1,3d' file1 >file2 | 刪除file1中1到3行,并將修改結(jié)果保存到file2中 |
sed -n '1,5p' filename | 只打印1到5行 |
sed '1,10s#my#your#g' filename | 將1至10行中的所有的my替換為your |
sed '/my/!d' filename | 刪除所有不含my的行 |
sed '/reports/s/5/8' filename | 將含有reports行的第一個數(shù)字5改為8 |
sed 's/....//' filename | 刪除每行的前4個字符 |
sed 's/....$//' filename | 刪除每行的后4個字符 |
sed -n '/word/w file2' flie1 | 將file1中所有包含word的行寫入file2中 |
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
分享題目:shell三劍客之sed(一)-創(chuàng)新互聯(lián)
文章URL:http://muchs.cn/article8/idiip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、商城網(wǎng)站、網(wǎng)站收錄、手機網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)