Я использую SED для замены некоторых ключевых слов в файле конфигурации Wordpress (setup-config. php).
Код, расположенный ниже, - это то, что я использую для изменения ключевых слов
sed -i -e "s/( 'wordpress'/( '$varname'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
sed -i -e "s/( 'username'/( '$varname'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
sed -i -e "s/( 'password'/( '$autogenpass'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
sed -i -e "s/( 'wp_'/( '$autogenprefix'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
Ниже приведены 2 строки, которые используют '(одинарные кавычки)
<?php echo htmlspecialchars( _x( 'username', 'example username' ), ENT_QUOTES ); ?>
<?php echo htmlspecialchars( _x( 'password', 'example password' ), ENT_QUOTES ); ?>" autocomplete="off" />
Ниже приведены 2 строки, которые НЕ работают, которые используют "(двойные кавычки)
<td><input name="dbname" id="dbname" type="text" aria-describedby="dbname-desc" size="25" value="wordpress"<?php echo $autofocus; ?>/></td>
<td><input name="prefix" id="prefix" type="text" aria-describedby="prefix-desc" value="wp_" size="25" /></td>
При замене слов в двойных кавычках этого не происходит "wordpress" и "wp _" .
I попробовал следующее:
sed -i -e "s/( '"wordpress"'/( '$varname'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
sed -i -e "s/( "'"wordpress"'"/( '$varname'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
sed -i -e "s/( '""wordpress""'/( '$varname'/g" "/var/www/$domainname/html/wp-admin/setup-config.php"
Я не уверен, что мне здесь не хватает.
Спасибо