sed -i "/xxxxxxxxxxxx/r inc-sausage" git.html
sed -i "/xxxxxxxxxxxx/d" git.html
首先替換的模式我插入INC香腸的內容時XXXXXXXXXXXX發現替換/與文件內容
其次,我刪除XXXXXXXXXXXX
兩個命令做我想要什麼。但是,我怎樣才能將兩個sed命令組合到一個? 我試圖
sed -i "s/xxxxxxxxxxxx/r inc-sauasge" git.html
sed -i "/xxxxxxxxxxxx/r inc-sausage" git.html
sed -i "/xxxxxxxxxxxx/d" git.html
首先替換的模式我插入INC香腸的內容時XXXXXXXXXXXX發現替換/與文件內容
其次,我刪除XXXXXXXXXXXX
兩個命令做我想要什麼。但是,我怎樣才能將兩個sed命令組合到一個? 我試圖
sed -i "s/xxxxxxxxxxxx/r inc-sauasge" git.html
首先,你coould串聯兩個sed
命令爲一行,並避免重複搜索字符串,像這樣:
sed -i -e "/xxxxxxxxxxxx/r inc-sausage" -e "//d" git.html
另外,如果你想要,而不是刪除xxxxxxxxxxxx
在其行其他的東西,你能做到這一點,而不是:
sed -i -e "/xxxxxxxxxxxx/r inc-sausage" -e "s///" git.html
這可能會爲你工作:
sed -i '/xxxxxxxxxxxx/{r inc-sausage'$'\n''d}' git.html
說明:
見here爲什麼$'\n'
是必要的。還要注意d
命令必須是最後的,因爲它會刪除模式空間,然後立即開始下一個週期。
或爲GNU sed的:
sed -i '/xxxxxxxxxxxx/s|.*|cat inc-sausage|e' git.html