linux: 空指令(:)

本文介绍Bash中的空命令(:)的使用技巧,包括快速创建文件、设置默认值、检查环境变量及作为占位符等场景,并通过实际测试比较了其与touch命令在效率上的差异。

:指令

描述:

空命令,除了参数替换和重定向外不执行任何操作,总是保证退出码为0.

eg1:创建文件(不需要调用其它程序,速度更快)

:>/path/to/file

测试:

创建10000个不存在的文件:
$ time for((i=1;i<=10000;++i)) do :>abc$i done
real  0m0.119s  #用时0.119s
$ time for (( i=1; i<=10000; ++i ))  do touch cba$i  done 
real 0m8.544s #用时8.544秒
创建10000个已经存在的文件:
$ time for (( i=1; i<=10000; ++i ))  do : > cba$i  done 
real 0m0.067s #用时0.067秒
$ time for (( i=1; i<=10000; ++i ))  do touch abc$i  done 
real 0m8.772s #用时8.772秒

eg2:设置默认值

:${name:="abc"}

eg3:提示必要的环境变量没有设置

:${HOSTNAME?}${USER?}${MAIL?}

eg4:占位符

#!/bin/bash

if [ 1 = 1 ]; then  
       :  
else
       echo hello  
fi 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值