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

标签 bash sed grep mysqldump

我有一个巨大的 mysqldump 输出并且想要排除特定表的插入。

文件看起来像这样:

--
-- Dumping data for table `big_table`
--

INSERT INTO `big_table` ...
INSERT INTO `big_table` ...


--
-- Table structure for table `next_table`
--

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

最佳答案

我忽略了一个事实,所有插入当然都是以表名开头的。所以我可以简单地使用

grep -v "INSERT INTO \`big_table\`" dump.sql > dump_stripped.sql

关于bash - 从 mysqldump 输出中删除特定表的插入数据(sed?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11522276/

相关文章:

sed - 如何从模式空间追加到保留空间而不使用 sed 在保留空间中插入新行?

bash - grep 区分大小写 [A-Z]?

java - 确定 Java 程序是否已从交互式 shell 启动

linux - 如何从文件中求和并以特定方式在 linux 中的另一个文件中移动?

json - 如何将文本文件拆分为多个文件并从行前缀中提取文件名?

linux - 修改字符串以使变量工作

Bash - 比较具有不同分隔符的字符串的简单方法?

unix - 为什么我的工具输出会自行覆盖,我该如何解决?

php - 在系统上的所有文件中查找一个字符串

linux - 在 linux 目录的所有文件中搜索和替换文本