在Linux终端中批量替换字符串

时间:2018-07-20 06:24:30

标签: php mysql linux server centos

我的服务器中有一堆wordpress,我需要在wp-config.php文件中更改每个wordpress数据库主机,我如何使用终端?

当前值

define( 'DB_HOST', '127.0.0.1' );

需要更改为

define( 'DB_HOST', 'dbserver.com' );

1 个答案:

答案 0 :(得分:-1)

可能的是,您需要使用以下命令,对于多个文件,您也可以使用wp-config.php文件的位置创建简单的脚本。

sed -i 's/define( "DB_HOST", "127.0.0.1" );/define( "DB_HOST", "dbserver.com" );/g' wp-config.php

说明:

sed =流编辑器

-i =就地(即保存回原始文件)

命令字符串:

  1. s =替代命令
  2. define( 'DB_HOST', '127.0.0.1' ); =描述要替换的字符串(或仅字符串本身)的正则表达式
  3. define( 'DB_HOST', 'dbserver.com' ); =要替换为的文本
  4. g =全局(即替换所有内容,而不仅仅是替换第一次出现的内容)
  5. wp-config.php =配置文件名

此答案摘自ask ubuntu