shell中冒号 : 用途说明
我們知道,在Linux系統(tǒng)中,冒號(hào)(:)常用來(lái)做路徑的分隔符(PATH),數(shù)據(jù)字段的分隔符(/etc/passwd)等。其實(shí),冒號(hào)(:)在Bash中也是一個(gè)內(nèi)建命令,它啥也不做,是個(gè)空命令、只起到占一個(gè)位置的作用,但有時(shí)候確實(shí)需要它。當(dāng)然,它也有它的用途的,否則沒(méi)必要存在。在·Linux的幫助頁(yè)中說(shuō)它除了參數(shù)擴(kuò)展和重定向之外不產(chǎn)生任何作用。
man :
No effect; the command does nothing beyond expanding arguments and performing any specified redirections. A zero exit code is returned.
常用參數(shù)
啥也不做,只起到占位符的作用。比如在編寫(xiě)腳本的過(guò)程中,某些語(yǔ)法結(jié)構(gòu)需要多個(gè)部分組成,但開(kāi)始階段并沒(méi)有想好或完成相應(yīng)的代碼,這時(shí)就可以用:來(lái)做占位符,否則執(zhí)行時(shí)就會(huì)報(bào)錯(cuò)。
Bash代碼
if [ "today" == "2011-08-29" ]; then
:
else
:
fi
寫(xiě)代碼注釋
單行注釋
: your comment here
# your comment here
多行注釋
: 'comment line1
comment line2
more comments'
清空文件file的內(nèi)容
: >file
>file
默認(rèn)參數(shù)
: ${VAR:=DEFAULT}
當(dāng)變量VAR沒(méi)有聲明或者為NULL時(shí),將VAR設(shè)置為默認(rèn)值DEFAULT。如果不在前面加上:命令,那么就會(huì)把${VAR:=DEFAULT}本身當(dāng)做一個(gè)命令來(lái)執(zhí)行,報(bào)錯(cuò)是肯定的。
使用示例
示例一 參數(shù)擴(kuò)展
[root@node56 ~]# : abc=1234
[root@node56 ~]# echo $abc
[root@node56 ~]# : ${abc:=1234}
[root@node56 ~]# echo $abc
1234
[root@node56 ~]# ${abc:=1234}
-bash: 1234: command not found
[root@node56 ~]#
示例二 清空文件
[root@node56 ~]# cat <<<"Hello" >123.txt
[root@node56 ~]# cat 123.txt
Hello
[root@node56 ~]# : >123.txt
[root@node56 ~]# cat 123.txt
[root@node56 ~]#
?
?
?
?
轉(zhuǎn)載自 我使用過(guò)的Linux命令之:(冒號(hào)) - 啥也不做(除了……)
總結(jié)
以上是生活随笔為你收集整理的shell中冒号 : 用途说明的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java表格更新javadb_Java解
- 下一篇: 小伙办公室吃螺蛳粉遭同事反击 老板:不许