如何使用shell脚本删除PL/SQL语句中的组注释

如何使用shell脚本删除PL/SQL语句中的组注释,shell,plsql,comments,Shell,Plsql,Comments,我是新来的,希望你能帮我做这件事。我有一个PL/SQL过程,我正在尝试使用shell脚本从脚本中删除注释。我用这个脚本来写单行评论 grep -v "^--" file_name > file_name2 但我不知道如何处理包含多行的注释。比如说, /* This line is just a comment*/ 提前谢谢 这应该是一条评论,但我没有足够的代表点来添加评论。无论如何 请注意,您的grep行仅在注释开始于行的开头时才删除注释 改为尝试告诉grep模式是正则表达式

我是新来的,希望你能帮我做这件事。我有一个PL/SQL过程,我正在尝试使用shell脚本从脚本中删除注释。我用这个脚本来写单行评论

grep -v "^--" file_name > file_name2
但我不知道如何处理包含多行的注释。比如说,

/* This 

line 

is just

a comment*/

提前谢谢

这应该是一条评论,但我没有足够的代表点来添加评论。无论如何 请注意,您的grep行仅在注释开始于行的开头时才删除注释

改为尝试告诉grep模式是正则表达式,并从双破折号出现的位置匹配到行尾检查grep的手册页以确保用于告诉它模式是正则表达式的开关:

grep -v -e "--.*$" filename
另外,请注意注释可能出现在SQL语句中,如果使用,则提示看起来像注释,但很可能不应删除。带有提示示例的SQL:

  SELECT /*+ ALL_ROWS */ employee_id, last_name, salary, job_id
  FROM employees
  WHERE employee_id = 7566;
在尝试剥离多行注释时要非常小心,以确保它们不是真正的提示。提示信息:

这里的东西:sed-r:a;s%.*/*.*/%\1%;ta;/\/*/!BN你的档案