1. 程式人生 > >shell指令碼的邏輯運算與算術運算-Linux(11)

shell指令碼的邏輯運算與算術運算-Linux(11)

邏輯運算

shell指令碼程式設計中提供了條件結構,根據條件的不同而進行不同的操作。

條件測試

兩種方式:

  • test 條件表示式
  • [ 條件表示式 ] 必須在[]前後加空格,否則報錯。
    測試一下:


輸出結果為:

可測試的條件型別

字串

比較方式 結果
string1 = string2 相同則為真
string1 != string2 不同則為真
-n string 字串不為空則為真
-z string 為空則為真

要注意的是 = 兩邊必須要有空格

算術比較

比較方式 結果
expression1 -eq expression2 相等則為真
expression1 -ne expression2 不等則為真
expression1 -gt expression2 expression1大於expression2則為真
expression1 -ge expression2 expression1大於或者等於expression2為真
expression1 -lt expression2 expression1小於expression2為真
expression1 -le expression2 expression1小於或者等於expression2為真

檔案條件測試

比較方式 結果
-d file 檔案是目錄則為真
-e file 檔案存在則為真
-f file 普通檔案則為真
-r file 檔案可讀則為真
-s file 檔案長度不為0則為真
-w file 檔案可寫則為真
-x file 檔案可執行則為真

邏輯運算

and運算

運算子為&&

statement1 && statement2 && statement3

順序執行語句,第一條為真才會判斷下一個。
測試程式碼:

#! /bin/bash
if [ 1 -gt 0 ] && echo 第二條命令 && [ 0 -gt 1 ]
then
echo yes
else
echo no
fi

結果:

or運算

statement1 || statement2 || statement3

順序執行,直到找到一條命令為真,則停止執行以後命令。

算術運算

expr命令

格式:

expr expression
  • 運算子號前後要有空格,並且乘法要轉義,即 "\*"
  • 啟用新的shell執行expr命令

$((expression))

$((expression))

let命令

格式:

let expression
  • 變數前可以省略$
    上述三種的測試程式碼:
#! /bin/bash
a=1
b=2
echo `expr $a \* $b`
echo $(($a*$b))
let c=a*b
echo $c

結果:

最近訪問

代做工资流水公司舟山贷款工资流水 样本石家庄日常消费流水公司孝感签证银行流水 费用宿迁消费贷流水多少钱肇庆公司银行流水代办潍坊代开自存银行流水信阳对公流水打印打印工资流水app截图贵阳查询银行流水账石家庄开房贷工资流水金华流水费用东莞入职银行流水报价潍坊企业贷流水打印舟山办理贷款工资流水九江对公流水多少钱襄阳企业对私流水办理南宁查薪资流水单泰安开入职银行流水哈尔滨签证工资流水岳阳打印入职流水太原转账流水模板上饶贷款流水打印潍坊做车贷流水海口转账银行流水代做泰安工资流水单样本长沙工资流水账单开具扬州企业贷流水办理孝感签证流水代办荆州打印对公流水武汉办理入职银行流水香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

代做工资流水公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化