主頁(yè) > 知識(shí)庫(kù) > linux shell 常用腳本語(yǔ)句語(yǔ)法收集 推薦

linux shell 常用腳本語(yǔ)句語(yǔ)法收集 推薦

熱門標(biāo)簽:服務(wù)器配置 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 美團(tuán) 解決方案 外呼系統(tǒng) 電話機(jī)器人搭建 家政服務(wù)網(wǎng)絡(luò) 硅谷的囚徒呼叫中心
1shell中的if語(yǔ)句語(yǔ)法
我發(fā)現(xiàn)有時(shí)候等于是用eq表示,有時(shí)候用=標(biāo)準(zhǔn),不明白
==============
eq數(shù)值
=字符串!??!
==============
可以看看man test
==============
流程控制

if 表達(dá)式 如果條件為真則執(zhí)行then后面的部分:
if ....
then
....
elif ....
then
....
else
....
fi
大多數(shù)情況下,可以使用測(cè)試命令來對(duì)條件進(jìn)行測(cè)試。比如可以比較字符串、判斷文件是否存在及是否可讀等等…
通常用 [ ] 來表示條件測(cè)試。注意這里的空格很重要。要確保方括號(hào)的空格。
[ -f somefile ] :判斷是否是一個(gè)文件
[ -x /bin/ls ] :判斷/bin/ls是否存在并有可執(zhí)行權(quán)限
[ -n $var ] :判斷$var變量是否有值
[ $a = $b ] :判斷$a和$b是否相等
==============
今天看到一本書,上面說if語(yǔ)句中如果用=,,>等比較符號(hào)是,應(yīng)該寫在括號(hào)中,如果是用-eq,-lt等就應(yīng)該寫在[ ]中,是這樣嘛??
==============
這應(yīng)該是針對(duì) ksh/bash 的,因?yàn)樗鼈兌紝?duì)原來的sh進(jìn)行了擴(kuò)展,可以直接使用
> = 來進(jìn)行數(shù)值判斷,但是就象你提到的,要寫在 (( )) 中。
==============
if 之后的判斷是test語(yǔ)法,而
if [表達(dá)式] 和
if test 表達(dá)式
是等價(jià)的
++++++++++++++++++++++++++++++++++++
test命令用法:
1)判斷表達(dá)式
if test (表達(dá)式為真)
if test !表達(dá)式為假
test 表達(dá)式1 –a 表達(dá)式2 兩個(gè)表達(dá)式都為真
test 表達(dá)式1 –o 表達(dá)式2 兩個(gè)表達(dá)式有一個(gè)為真

2)判斷字符串
test –n 字符串 字符串的長(zhǎng)度非零
test –z 字符串 字符串的長(zhǎng)度為零
test 字符串1=字符串2 字符串相等
test 字符串1?。阶址? 字符串不等

3)判斷整數(shù)
test 整數(shù)1 –eq 整數(shù)2 整數(shù)相等
test 整數(shù)1 –ge 整數(shù)2 整數(shù)1大于等于整數(shù)2
test 整數(shù)1 –gt 整數(shù)2 整數(shù)1大于整數(shù)2
test 整數(shù)1 –le 整數(shù)2 整數(shù)1小于等于整數(shù)2
test 整數(shù)1 –lt 整數(shù)2 整數(shù)1小于整數(shù)2
test 整數(shù)1 –ne 整數(shù)2 整數(shù)1不等于整數(shù)2

4)判斷文件
test File1 –ef File2 兩個(gè)文件具有同樣的設(shè)備號(hào)和i結(jié)點(diǎn)號(hào)
test File1 –nt File2 文件1比文件2 新
test File1 –ot File2 文件1比文件2 舊
test –b File 文件存在并且是塊設(shè)備文件
test –c File 文件存在并且是字符設(shè)備文件
test –d File 文件存在并且是目錄
test –e File 文件存在
test –f File 文件存在并且是正規(guī)文件
test –g File 文件存在并且是設(shè)置了組ID
test –G File 文件存在并且屬于有效組ID
test –h File 文件存在并且是一個(gè)符號(hào)鏈接(同-L)
test –k File 文件存在并且設(shè)置了sticky位
test –b File 文件存在并且是塊設(shè)備文件
test –L File 文件存在并且是一個(gè)符號(hào)鏈接(同-h)
test –o File 文件存在并且屬于有效用戶ID
test –p File 文件存在并且是一個(gè)命名管道
test –r File 文件存在并且可讀
test –s File 文件存在并且是一個(gè)套接字
test –t FD 文件描述符是在一個(gè)終端打開的轉(zhuǎn)載請(qǐng)注明文章來

命令行內(nèi)循環(huán):
a=0 while [ $a -lt 10 ] ; do echo $a a=`expr $a + 1` ; done

標(biāo)簽:撫州 防城港 韶關(guān) 邢臺(tái) 臨沂 烏蘭察布 北海 南昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《linux shell 常用腳本語(yǔ)句語(yǔ)法收集 推薦》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266