3

/*有一种方法可以从文件中删除包含在 bash 脚本之间和*/使用 bash 脚本的所有行吗?

我使用percona生成一个 sql 脚本来同步两个数据库,一个开发数据库到一个生产数据库。Percona生成一个格式良好的 SQL 脚本,但其中充满了增加文件大小的注释。所以,为了使上传操作更容易,我宁愿删除所有不必要的。

1月10日编辑

我用这段代码解决了:

sed -r ':a; s%(.*)/\*.*\*/%\1%; ta; /\/\*/ !b; N; ba' <FILE_TO_CLEAN>

谢谢大家

4

2 回答 2

6

使用sed

sed '/\/\*.*\*\// d; /\/\*/,/\*\// d' file

该命令d告诉 sed 删除与前面的表达式匹配的模式。第一个表达式/\/\*.*\*\//匹配单行注释,第二个表达式匹配多行注释/\/\*/,/\*\//(这是由 暗示的,)。

我不知道这是否 100% 有效,但据我尝试,它完成了这项工作。

于 2013-01-09T10:23:33.033 回答
0

-试试这个脚本- 它应该有助于删除注释,因为与 C++ 相同在这里你可以看到另一个 sed 示例来删除 HTML 注释

于 2013-01-09T09:41:38.267 回答