2014-09-11 100 views
1

我需要一些幫助,我有這樣的命令:添加truncate table命令之前CREATE TABLE IF NOT EXIST

mysqldump -u myusername -pmypassword --skip-add-drop-table --no-data --single-transaction database_name | sed 's/CREATE TABLE/CREATE TABLE IF NOT EXISTS/g' > db.sql 

可以在我的mysqldump添加CREATE TABLE IF NOT EXISTS,但我也想前加TRUNCATE TABLE命令CREATE TABLE IF NOT EXISTS命令,我該怎麼做?

回答

2

只需添加更多一點的正則表達式在sed:

mysqldump -u myusername -pmypassword --skip-add-drop-table --no-data --single-transaction database_name | sed -r 's/CREATE TABLE (`[^`]+`)/TRUNCATE TABLE \1; CREATE TABLE IF NOT EXISTS \1/g' > db.sql 
+0

做這個工作的windows系統也'sed'上 – Smith 2016-10-15 22:43:46