sed例項分析(二) G和H的用法

2021-09-01 07:38:42 字數 1049 閱讀 7330

一、示例檔案及需求:

cat file

11111111

2222222

3333333

反序顯示

二、sed處理及結果:

sed '1!g;h;$!d'

3333333

2222222

11111111

三、命令說明:

g g 複製/附加保持空間的內容到模式空間

h h 複製/附加模式空間的內容到保持空間

四、命令執行流程:

執行第一行,儲存第一行保持空間,清除模式空間

執行第二行,儲存第二行+第一行到保持空間,清除模式空間

執行第三行,儲存第三行+第二行+第一行到保持空間,清除模式空間

comm:

代表命令,

patt:

代表patternspace

的內容,hold代表保持空間的內容,其他為

sed輸出的內容

patt:11111111 <------cycle1

hold:

comm:1!g

comm:h

hold:11111111

comm:$!d

patt:

patt:2222222 <-------cycle2

comm:1!g

patt:2222222\n11111111

comm:h

hold:2222222\n11111111

comm:$!d

patt:

patt:3333333 <---------cycle3

comm:1!g

patt:3333333\n2222222\n11111111

comm:h

hold:3333333\n2222222\n11111111

comm:$!d

out:3333333\n2222222\n11111111

patt:

Sed的用法(二)

1.排除命令 取反 1 this is the header line 2 this is the first line 3 this is the second line 4 this is the last line使用排除的方式列印出不包含header的所有行的內容 不使用!取反列印出的內容 ...

shell學習 sed用法的例項

替換文字中的字串 sed s book books file n選項和p命令一起使用表示只列印那些發生替換的行 sed n s test test p file sed i s book books g file使用字尾 g 標記會替換每一行中的所有匹配 sed s book books g fil...

C 中is和as用法例項分析

現來看個例子 public class user public class group class program 這樣會報錯 invalidcastexception 由於c 安全機制,它會去判斷一次。我們這裡做了非法的轉換。is做判斷 is說判斷物件是不是你要的那個型別 這裡說user 修改後的...