当前位置 博文首页 > shell中如何批量注释和取消注释

    shell中如何批量注释和取消注释

    作者:用户1214487 时间:2021-01-31 21:02

    #!/bin/bash
    echo "1"
    echo "2"
    echo "3"
    echo "4"
    echo "5"
    echo "6"

    上面这段shell会依次打印1~6

    假设我们想只打印5和6,想将1-4注释掉,除了正常的做法,每行前面加#进行注释外

    一、手动添加注释

    我们还可以用个取巧的办法,也可以写成下面这种

    #!/bin/bash
    :<<EOF
    echo "1"
    echo "2"
    echo "3"
    echo "4"
    EOF
    echo "5"
    echo "6"

    冒号在shell里是一个命令,代表什么都不做

    另外

    : > data.log 等同于 cat /dev/null > data.log 可以起到清空文件内容的作用

    还可以将1-4的输入重定向追加到黑洞中

    #!/bin/bash
    cat >/dev/null<<EOF
    echo "1"
    echo "2"
    echo "3"
    echo "4"
    EOF
    echo "5"
    echo "6"

    二、利用vim批量添加注释

    1.块选择模式

    插入注释
    首先用vim打开我们要操作的脚本,

    然后将光标移动到我们要操作的首行(这里我们移动到echo "1"的左方),接着按v进入-- 可视(visual) --模式

    然后用上下键选中需要注释的行数(这里我们使用下方向键一直移动到echo "4"那行)

    然后按ctrl+v(win下面ctrl+q)进入列模式

    按大写“I”进入插入模式,输入注释符“#”或者是"//",然后立刻按下ESC(两下)

    最终效果如下

    取消注释

    ctrl + v 进入块选择模式,选中你要删除的行首的注释符号,注意// 要选中两个,

    选好之后按d即可删除注释

    方法二 替换命令

    批量注释:

    使用下面命令在指定的行首添加注释:

    :起始行号,结束行号s/^/注释符/g

    我们这里是要操作第2行到第5行,所以用vim打开脚本后,输入

    :2,5s/^/#/g

    然后回车,即可完成替换

    取消注释:

    :起始行号,结束行号s/^注释符//g

    这里我们使用

    :2,5s/^#//g

    回车

    js