簡體   English   中英

通過腳本替換文本行

[英]Replace Line of Text Through Script

我正在使用一個腳本來更新文件,用一個存儲在變量中的文本替換一行文本。 在嘗試了很多東西后,我猜測問題是插入了文本,它可能使用了sed不喜歡的字符。 我正在使用該命令的示例,替換文本的外觀如下所示:

sed 's/^define.*$/'define('AUTH_KEY',         'r*v8]Wic;@Y4{|0EQ9Z?~W,-P}k:d{k)ylAFHm-d(tY6v?U,5{hn].e9eH%/Xmdy');'/' change.html

我在這里的其他地方讀到你需要逃避角色但卻無法使用我在這里找到的答案: 逃脫字符串以獲得sed替換模式

非常感謝任何幫助,或正確方向的指針,謝謝! :)

請注意, sed可以將任何字符作為分隔符,而且/只是常規字符。 如果您可以保證您的密鑰沒有空格,您可以嘗試:

sed 's ^define.*$ &(yourkey) '

嘗試這樣的事情 -

將替換文本分配給變量 -

[jaypal:~/Temp] abc="'define('AUTH_KEY',         'r*v8]Wic;@Y4{|0EQ9Z?~W,-P}k:d{k)ylAFHm-d(tY6v?U,5{hn].e9eH%/Xmdy');'"

awk's sub使用該變量。

[jaypal:~/Temp] awk -v rep="$abc" '{sub(/^define.*$/,rep,$0); print}' change.html 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM