【发布时间】:2016-12-03 23:44:37
【问题描述】:
我是 sed 的新手,我无法使用它来删除所有 ';' C++ 文件 cmets 中的字符,即开始或包含字符串“//”的行(我已经将“/* ... */” cmets 转换为“// ...” cmets)。
例如:
// lorem; ipsum ; test
int a; // 1 ; 2 ; 3 ;
我想拥有:
// lorem ipsum test
int a; // 1 2 3
对于我的 C++ 文件中的任何评论。
*********编辑*********
这是一个分两步使用 SED 的解决方案。答案中也提供了 AWK 的解决方案。
- 将所有 cmets 放在一个新行上:
sed 's/\/\//\n\/\//g' - 删除“;”仅在以“//”开头的行上:
sed '/^\/\// s/;//g'
【问题讨论】:
标签: sed comments character-replacement