用于评论一行的Shell脚本

时间:2013-08-05 07:43:23

标签: shell sed

我想评论哪条线出现

  

如果(a& b)? C:d;

所以我看过一个剧本,但它没有用。

for f in var.c; do
  cat $f | sed 's@if(a & b)\(.*\)$@/*\1 */@' > converted-files/$f
done

任何人都可以告诉我比这更适合我的情况的脚本。

2 个答案:

答案 0 :(得分:1)

您的sed表达式只写入 include ,只有三元运算符之后的部分。尝试:

sed 's@if(a & b).*$@/* & */@'

那就是说,我不确定你是否真的想用 regex 来评论代码。

答案 1 :(得分:0)

你真的不应该使用cat。你的代码片段也不是有效的C,但这可能是一个很好的理由来评论它。

for f in var.c
do
    sed 's@if(a & b).*$@/*&*/@' $f > converted-files/$f
done

如果您愿意,可以在注释标记周围添加空格,但对称性表示总共有0或2个空格,而不是脚本中的1。