sed命令取消注释代码行

问题描述 投票:0回答:1

处理构建自动化脚本,我们试图从一个名为code.js的文件中获取输入,如下所示:

var foo = {};

// var bar = 1;
// var fooBar = 2;
// var barFoo = 3;

当我们完成后,输出注释行现在取消注释,没有这样的前导空格:

var foo = {};

var bar = 1;
var fooBar = 2;
var barFoo = 3;

我们正试图将转换保存回code.js

到目前为止,我们已经尝试过这个sed命令,但我们的sed并不是那么好:

sed -i '' -e's/\*\//\n&/g' code.js

我们也尝试使用awk,但是领先的空间仍然存在并且它似乎在终端上工作,但由于某些原因不在自动化脚本中:

awk '{sub(/\/\//,""); print}' code.js

我们更喜欢使用sed,因为到目前为止我们已经有一些sed inplace replacement命令。我们怎样才能在sed中做到这一点?

javascript linux bash shell sed
1个回答
3
投票

使用GNU sed:

sed -i 's|^// ||' file
© www.soinside.com 2019 - 2024. All rights reserved.