2021年3月23日 星期二

[Linux Shell Script] sed 在指定行前面加字元

最近因為寫安裝realsense sdk的script, 需要將原本的script部分註解掉,找到這個sed指令


 sed -i '308,320 s/^/# /1' fileName

註解 308~320行

-i : 寫入原檔

308,320: 範圍 308 ~320

s: 取代

^: pattern前的空字元 ($ 表示pattern 的空字元)

1: 作用在第一個matched pattern (g表示所有)

sed -i '1 s/^/# /1 ; 3 s/^/# /1' test

註解 1,3行

sed -i 's/# //g' test

刪掉 test 中所有 '# '

ref:

https://terryl.in/zh/linux-sed-command/

regular express

https://www.gnu.org/software/sed/manual/sed.html#sed-regular-expressions


ps. 如果要取代檔案中的字

sed -i 's/WORD_TO_REPLACE/replacer/g' fileName


會將

abcdWORD_TO_REPLACEabcdWORD_TO_REPLACE123

變成

abcdreplacerabcdreplacer123


沒有留言:

張貼留言