gpt4 book ai didi

sql - 使用变量替换sql文件中的文本

转载 作者:行者123 更新时间:2023-12-04 23:44:06 25 4
gpt4 key购买 nike

我有一个 sql 文件,我想通过 ssh 脚本更新它。我正在尝试使用 sed 替换其中的一些文本。我没有收到错误,但文本没有被替换。这是我正在使用的代码。

#!/bin/sh

echo -n "enter theme: "
read theme
echo -n "enter username: "
read user
echo -n "enter domain/url: "
read url

cd /home/$theme/

sed -i 's/\/{$theme}/\/{$user}/g' ./$theme.sql
sed -i 's/{$theme}.domain.net/{$url}/g' ./$theme.sql

因此,我尝试用我引用的 sql 文件中的新变量 $user 和 $url 替换当前文本($theme 变量)。

这是它将要筛选和更新的内容的 sql 片段:

LOCK TABLES `ivg4_options` WRITE;
/*!40000 ALTER TABLE `ivg4_options` DISABLE KEYS */;
INSERT INTO `ivg4_options` VALUES (1,'siteurl','http://megashop.domain.net/','yes'),(2,'blogname','Woo Commerce','yes'),(3,'blogdescription','Just another WooCommerce site','yes'),(37,'home','http://megashop.domain.net','yes'),(38,'category_base','','yes'),(40,'advanced_edit','0','yes'),(41,'comment_max_links','2','yes'),(42,'gmt_offset','0','yes'),(43,'default_email_category','1','yes'),(52,'use_trackback','0','yes'),(53,'default_role','subscriber','yes'),(54,'db_version','33055','yes'),(55,'uploads_use_yearmonth_folders','1','yes'),(56,'upload_path','/home/megashop/public_html/wp-content/uploads','yes')

最佳答案

首先,去掉“{”和“}”。你不需要它们。

第二个问题是:-i 需要一个参数(至少有些版本...这里好像是这样),所以你至少要提供一个空字符串 '' 如果您想忽略它。来自 sed 手册页:

 -i extension
Edit files in-place, saving backups with the specified extension.
If a zero-length extension is given, no backup will be saved. It
is not recommended to give a zero-length extension when in-place
editing files, as you risk corruption or partial content in situ-
ations where disk space is exhausted, etc.

通常它会产生一个有点神秘的错误消息,说“sed:-i 可能无法与标准输入一起使用”。你可能错过了这个……

这是最终的脚本:

#!/bin/sh

echo -n "enter theme: "
read theme
echo -n "enter username: "
read user
echo -n "enter domain/url: "
read url

cd /home/$theme/

sed -i '' 's/\/$theme/\/$user/g' ./$theme.sql
sed -i '' 's/$theme.domain.net/$url/g' ./$theme.sql

关于sql - 使用变量替换sql文件中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32417458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com