【发布时间】:2015-12-30 07:41:08
【问题描述】:
我试图在文件wp-config.php 中找到{AUTH-KEYS-SALTS} 并将其替换为bash 变量keysalts 的内容。
keysalts=`curl -sS https://api.wordpress.org/secret-key/1.1/salt/`
sed -i "s/{AUTH-KEYS-SALTS}/$keysalts/g" wp-config.php
以下几乎可以工作,除了 keysalts 有一堆特殊字符,例如 $`;'" 并且 sed 变得困惑。基本上,我如何逃避所有内容,只需将 {AUTH-KEYS-SALTS} 替换为$keysalts?
谢谢。
【问题讨论】:
-
如果使用 bash,则无需处理 sed 进行字符串替换。只需使用:
(contents="$(cat wp-config.php)"; result="${contents//'{AUTH-KEYS-SALTS}'/"$keysalts"}"; echo "$result" >wp-config.php;)。