0

所以,我正在处理一个 bash 脚本,并且在一个函数中我需要它来注释掉 PHP 文件中的两个值。

define('WP_CACHE', true); //Added by WP-Cache Manager
define( 'WPCACHEHOME', '/home/fescobar/public_html/testground/wp-content/plugins/wp-super-cache/' ); //Added by WP-Cache Manager

我设法使用以下方法摆脱了第一行。

first="define('WP_CACHE', true);"; sed "s/$one/testingwp/g" wp-config.php

但是,该方法第二次失败。我的主要目标只是在这些值前面用 //* 注释掉这两行。但是,我总是得到一个 sed 语法错误。

4

1 回答 1

0

看起来你只是想要:

sed '/WP_CACHE/s|^|//|'sed '/WPCACHE/s|^|//|'

这将//添加到包含字符串WP_CACHEWPCACHE. 如果您尝试将替换重新串到也匹配的行^define,请尝试:

sed '/^define(.WP_CACHE/s|^|//|' (您实际上可以匹配引号字符,但使用.更容易键入。您需要更多地细化问题以描述您要做什么。

于 2013-02-03T15:51:49.543 回答