删除文件中的单行注释

时间:2014-10-24 00:27:37

标签: sed

如何删除以/*......*/

开头的单行注释

在任何地方,我的意思是它可以单独排成一行或者例如在一些方程之后。

我正在思考以下几点:

s/\/\*.*\*\///g'

2 个答案:

答案 0 :(得分:2)

或者如果您不喜欢尖桩篱笆外观,您可以更改分隔符并使用字符类来防止必须逃避一切:

's|/[*].*[*]/||g'

注意:允许的分隔符更换因OS而略有不同。

答案 1 :(得分:1)

sed -e 's|/\*.*\*/||g'                 => to remove /* ... */
sed -e 's|//.*||g'                     => to remove //...
sed -e 's|/\*.*\*/||g' -e 's|//.*||g'  => to remove both /* ... */ and //...

示例:

sdlcb@ubuntu:~$ cat file
jksdjskjdsd /* jdskdskd */
jdskdjsd // ksldksldsdks
uiiu
sdlcb@ubuntu:~$ sed -e 's|/\*.*\*/||g' -e 's|//.*||g' file
jksdjskjdsd 
jdskdjsd 
uiiu