原文:sed 多行處理詳細總結

在正常情況下,sed將待處理的行讀入模式空間,腳本中的命令就一條接着一條的對該行進行處理,直到腳本執行完畢,然后該行被輸出,模式空間請空 然后重復剛才的動作,文件中的新的一行被讀入,直到文件處理完備。但是,各種各樣的原因,比如用戶希望在某個條件下腳本中的某個命令被執行,或者希望模式空間得到保留以便下一次的處理,都有可能使得sed在處理文件的時候不按照正常的流程來進行。這個時候,sed設置了一些高級 ...

2015-05-16 14:05 0 5971 推薦指數:

查看詳情

【shell】sed處理多行合並

有這么一個題 這題我的的想法是先用xargs去掉所有的換行符,然后用sed把table替換成\ntable。 可以題目中要求了只能用sed,所以本題的核心就是sed合並行。 怎么用sed合並行,我用到了保持空間,步驟如下: 1.如果是第一行,把模式空間替換到保持空間 ...

Wed Mar 02 22:50:00 CST 2016 0 1706
sed匹配多行替換

sed -i '/aaa/{:a;n;s/123/xyz/g;/eee/!ba}' yourfile 如題:aaa123123123123123eee怎么匹配aaa~eee(開始結束字符串確定),然后替換123這樣的 先匹配aaa,匹配到后執行大括號里的語句。 n 讀取 ...

Tue Nov 27 23:27:00 CST 2018 0 1636
shell sed 插入多行

# tr 大小寫替換payload=$(echo ${payload} | tr '[a-z]' '[A-Z]')version_tag=$(echo ${version_tag} | tr '[a- ...

Wed Apr 28 22:22:00 CST 2021 0 452
sed中的多行匹配

sed中的多行匹配,可以用N,N的意思是把下一行寫入保持空間,保持空間可能不好理解,可以理解為機器的內存一樣,把一下行也寫入內存,可能會好理解多了,當把一下行也寫入保持空間的時間,轉行符"\n",也可以用.*匹配到了,前幾天在幫開發做全局替換,在一對php標簽中,替換里面的兩行內容,其他有兩個字 ...

Thu Aug 14 22:13:00 CST 2014 0 7790
sed 命令多行多行的定位方式

本文提要: sed 命令定位方式的分類 着重對 /pattern/,/pattern/ 的定位方式進行闡述 定位方式分類 總體上,只需要分為兩類,即:x 和 x,y 。如果在范圍后加 ! 則表示取補集,即指定范圍之外的所有行。 其中,x 和 y 均有兩種形式,即:數字 ...

Mon Mar 05 05:21:00 CST 2018 1 1639
sed匹配多行並替換其中的內容

sed -i '/aaa/{:a;n;s/123/xyz/g;/eee/!ba}' yourfile 如題:aaa123123123123123eee怎么匹配aaa~eee(開始結束字符串確定),然后替換123這樣的 先匹配aaa,匹配到后執行大括號里的語句。 n 讀取 ...

Thu Sep 28 01:23:00 CST 2017 0 7251
vim/sed/awk/grep等文件批處理總結

Vim相關操作 1.基礎 * 和 # 對對當前光標所在的單詞進行搜索 %匹配括號移動,包括 (, {, [ K 查看man手冊 ga 查看ascii值 g CTRL-G 統計 ...

Tue Oct 09 23:28:00 CST 2018 0 749
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM