首页 > 解决方案 > 从 wp-config.php 文件中提取数据库名称

问题描述

您好,我正在尝试从 root 运行我的 ssh bash 脚本(它可以访问我服务器上的所有数百个数据库)。我正在尝试获取我的 wordpress 网站的数据库名称,而无需登录并打开文件并复制并粘贴数据库名称。我这样做是为了继续使用脚本在特定数据库中做其他事情。

因此文件 wp-config.php 中的数据库行项总是如下所示: name define( 'DB_NAME', 'xyz' );

我只是试图找到该行项目,然后获取/提取并稍后在脚本中使用该数据库名称(即 xyz)(即 $db)。就是这样。

我假设使用 grep/sed/regex 或 combo 或其他方法可以做到,但我不知道怎么做。让我知道是否有人知道如何做到这一点?

标签: wordpressbashsshcommand-line-interface

解决方案


这是一个适合 sed 的任务。使用正则表达式选择匹配的定义行并使用捕获组提取值:

db=$(sed -n "s/define( *'DB_NAME', *'\([^']*\)'.*/\1/p" wp-config.php)
echo $db

推荐阅读