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

所属分类: 脚本专栏 / linux shell 阅读数: 1362
收藏 0 赞 0 分享
#!/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

回车

以上就是shell中如何批量注释和取消注释的详细内容,更多关于shell 注释的资料请关注脚本之家其它相关文章!

更多精彩内容其他人还在看

Shell脚本中计算字符串长度的5种方法

这篇文章主要介绍了Shell脚本中计算字符串长度的5种方法,来自于个人Shell脚本长期的开发经验,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell脚本实现把进程负载均衡到多核CPU中

这篇文章主要介绍了Shell脚本实现把进程负载均衡到多核CPU中,可以把进程指定运行在某个CPU中,需要的朋友可以参考下
收藏 0 赞 0 分享

5个Shell脚本编程入门练习例子

这篇文章主要介绍了5个Shell脚本编程入门例子,涵盖了各种操作,又有一些游戏的性质,作为入门练习例子是不很不错的,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell脚本编程中常用的数学运算实例

这篇文章主要介绍了Shell脚本编程中常用的数学运算实例,包含最基本的加减乘除,还有质数、偶数的判断等,需要的朋友可以参考下
收藏 0 赞 0 分享

5个实用的shell脚本面试题和答案

这篇文章主要介绍了5个实用的shell脚本面试题和答案,给出的脚本堪称编码规范,麻雀虽小,异常处理,友好提示,一应俱全,值得学习,需要的朋友可以参考下
收藏 0 赞 0 分享

使用bash shell删除目录中的特定文件的3种方法

这篇文章主要介绍了使用bash shell删除目录中的特定文件的3种方法,分别为扩展模式匹配符、GLOBIGNORE 变量和find 命令,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell获取文件的文件名和扩展名的例子

这篇文章主要介绍了Shell获取文件的文件名和扩展名的例子,简明版的代码实例,看了就懂,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell多线程操作及线程数控制实例

这篇文章主要介绍了Shell多线程操作及线程数控制实例,文中从单线程实现一个需求开始,不断加入代码实现多线程以及线程数的控制功能,需要的朋友可以参考下
收藏 0 赞 0 分享

阿里云主机一键安装lamp、lnmp环境的shell脚本分享

这篇文章主要介绍了阿里云主机一键安装lamp、lnmp环境的shell脚本分享,需要的朋友可以参考下
收藏 0 赞 0 分享

shell脚本转发80端口数据包给Node.js服务器

开发基于Node.js的WEB应用很方便,但是服务端口问题很蛋疼,由于Linux内核规定普通用户只能使用大于1024的端口号,所以使用普通用户运行Node.js服务就不能监听80端口
收藏 0 赞 0 分享
查看更多