我有一個sql文件,我想通過ssh腳本來更新。我試圖用sed替換那裏的一些文本。我沒有收到錯誤,但文字並未取代。這是我正在使用的代碼。使用變量替換sql文件中的文本
#!/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和$網址。
這裏是什麼將通過和更新進行篩選的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')
您可以編輯您的問題,包括該SQL腳本的內容是什麼?查看這些sed行應該採取的行動將會很有幫助。 – Kenster
我剛剛做到了。那是對的嗎? – sven30
是的,那樣更好。所以「megashop」是一個主題的例子嗎? – Kenster