使用SED从Javascript文件中删除功能

时间:2017-10-26 11:51:19

标签: bash sed

如何从javascript文件中使用Bash / SED删除或清除特定功能的未知内容?例如,我的.js文件我要从以下内容中清空func1和func3:

function func1(){
    //unknown contents
}
function func2(){
    //unknown contents
}
function func3() {
    func1();
    if (var1) {
        func2();
    } else {
        func4();
    }
}

我希望它看起来像这样

function func1(){
}
function func2(){
    //do something
}
function func3() {
}

如果它是HTML块,那么每个结束标记都是唯一的

会更容易

有些事情如下:

sed -i '' -e 's/function func1(){.*}/function func1(){newcode.*}/g' file.js

由于

2 个答案:

答案 0 :(得分:1)

关注awk可能对你有帮助。

$(document).on('load', '#tbl', function(e) {
    $(this).floatThead();
});

输出如下。

awk '/^}/{flag=""} /function func1/||/function func3/{flag=1;print;next} flag{next} 1'   Input_file

答案 1 :(得分:1)

使用sed

sed '/function func1\|function func3/!b;:A;N;;/\n}/!{s/\n.*//;bA}' file.js

sed -i替换。