Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 运行脚本以更改wp配置文件数据库名称_Linux_Database_Wordpress_Bash - Fatal编程技术网

Linux 运行脚本以更改wp配置文件数据库名称

Linux 运行脚本以更改wp配置文件数据库名称,linux,database,wordpress,bash,Linux,Database,Wordpress,Bash,我教学生如何修复wordpress网站,我想写一个脚本,看看他们在wp-config.php中有哪些信息,并在数据库名称中添加一个字母或数字 例如,这条线就是这样 define('DB_NAME', 'cpanelUser_NameofDB'); 我想在NameofDB 我可以用它来隔离cpanelUser_NameofDB grep -i 'DB_NAME' wp-config.php | cut -d"'" -f4 但我不知道如何添加信息,也不知道这是否是我应该运行的正确脚本。我还希望它

我教学生如何修复wordpress网站,我想写一个脚本,看看他们在wp-config.php中有哪些信息,并在数据库名称中添加一个字母或数字

例如,这条线就是这样

define('DB_NAME', 'cpanelUser_NameofDB');
我想在
NameofDB

我可以用它来隔离cpanelUser_NameofDB

grep -i 'DB_NAME' wp-config.php | cut -d"'" -f4

但我不知道如何添加信息,也不知道这是否是我应该运行的正确脚本。我还希望它与数据库的名称无关,因为它将在多个站点上运行。我相信我可以使用正则表达式,但我不太精通,也不知道从哪里开始。救命啊

为此,您可以使用sed来修复此行:

#/bin/bash
id=34
sed-i“s/^.*DB_NAME.*$/define('DB_NAME','cpanelUser_NameofDB${id}');/“wp-config.php
flag-i表示我们直接在文件中进行更改

或者,您可以在sed处理stdin和stdout时创建模板文件并生成新文件

#/bin/bash
id=34
cat wp config.php模板| sed“s/^.*DB_NAME.*$/define('DB_NAME','cpanelUser_NameofDB${id}');/“>wp config.php.$id

您是否考虑过
define
语句可能跨越多行,包括任意注释的可能性?