SHELL指令碼查詢指定內容的行號,並刪除替換該行

2021-10-24 04:16:57 字數 549 閱讀 3489

適合檔案中只有乙個指定字串的行

原文章:

#!

/bin/bash

#查詢的字串

str1=

"string1"

#新字串

newstr=

"string2"

#被替換的檔名

filename=

"filename"

#獲取指定字串的行號

line=`sed -n '/$str1/=' $filename`

#刪除這行

sed -i "$line d" $filename

#在刪除的行插入新字串

sed -i "$line i$newstr" $filename

line=`sed -n '/pam_authenticator.so/=' $`if(

($line >0)

)then

sed -i "$line d" $sshd

sed -i "$line i $sshd_old" $sshd

SHELL 在指定行的前 後插入指定內容

如果知道行號可以用下面的方法 sed i 88 r b.file a.file 在a.txt的第88行插入檔案b.txt awk 1 nr 88 a.file a.file 如果不知道行號,可以用正則匹配 sed i regex r b.txt a.txt regex是正規表示式 awk targe...

shell指令碼 內容查詢之grep命令

grep命令可以檢索檔案中包含關鍵字 可以使用正則 的行,預設區分大小寫。ubuntu ubuntu test cat test.txt this is linux this is linux this is mysql this is mysql ubuntu ubuntu test grep l...

pandas刪除包含指定內容的行

處理資料時,遇到檔案中包含一些不需要的資料 行 需要把這些不符合要求的行給刪除掉。例如 該資料中應該都是2000年的資料,但是包含了一些2001年的資料,所以需要把2001年的資料給刪除掉。找到所有包含2000年的資料 source df source df date map lambda d d....