bash 从mysqldump输出中删除特定表的插入数据(sed?)

2022年 10月 17日 发表评论
免费、便宜/高性价比 服务器汇总(已更新):点击这里了解

本站教程收集整理的这篇文章主要介绍了bash从mysqldump输出中删除特定表的插入数据(sed?),本站教程本站觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个巨大的 mysqldump输出,并希望排除特定表的插入.

该文件如下所示:

--  -- Dumping data for table `big_table`  --    INSERT INTO `big_table` ...  INSERT INTO `big_table` ...      --  -- Table structure for table `next_table`  --

如何删除介于“为表big_table转储数据”和下一个“表结构表”之间的插入文件太大而无法放入文本编辑器中.

解决方法

使用sed的一种解决方案.它搜索文字之间的所有行转储表’big_table’的数据和表的表结构.并评论那些不以开头的行.

假设infile的内容:

1  2  3  4  --  -- Dumping data for table `big_table`  --    INSERT INTO `big_table` ...  INSERT INTO `big_table` ...      --  -- Table structure for table `next_table`  --  1  2  3  4  5  6

运行命令:

sed -e '      /-- Dumping data for table `big_table`/,/-- Table structure for table/ {           /^--/! s/^/--/       }  ' infile

输出如下:

1  2  3  4  --  -- Dumping data for table `big_table`  --  --  --INSERT INTO `big_table` ...  --INSERT INTO `big_table` ...  --  --  --  -- Table structure for table `next_table`  --  1  2  3  4  5  6

本站总结

以上是本站教程为你收集整理的bash从mysqldump输出中删除特定表的插入数据(sed?)全部内容,希望文章能够帮你解决bash从mysqldump输出中删除特定表的插入数据(sed?)所遇到的程序开发问题。

如果觉得本站教程网站内容还不错,欢迎将本站教程推荐给好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。

小咸鱼

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: