Linux Shell编程中的条件语句有哪些?针对这个问题,今天小编总结这篇有关条件语句的文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。
条件测试
- <李>文件测试李> <李>整数测试李> <>李字符串与逻辑测试李>
如果语句
- <李>如果单分支语句李> <李>如果双分支语句李> <李>如果多分支语句李> <李>如果嵌套李>
条件测试操作
测试命令
- <李>测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值李>
<代码>格式1:测试条件表达式 格式2:[条件表达式),,,//至少应有一个空格代码>
文件测试
<代码>[操作符文件或目录)代码>
常用的测试操作符
- <李> - d:测试是否为目录李> <李> - e:测试目录或文件是否存在李> <>李- f:测试是否为文件李> <李> - r:测试当前用户是否有权限读取李> <>李- w:测试当前用户是否有权限写入李> <>李- x:测试当前用户是否有权限执行李>
<代码> [root@localhost ~] # [- d/媒体/cdrom] (root@localhost ~) # echo $ ? 0,,,,,,,,,,,,,,,,,,,,,,//返回0表示条件成立 [root@localhost ~] # [- d/媒体/cdrom/服务器) (root@localhost ~) # echo $ ? 1,,,,,,,,,,,,,,,,,,,,,,//返回1表示条件不成立 [root@localhost ~] # [- d/媒体/cdrom),,回声“YES",,//,,逻辑与,“而且”的意思 是的代码>
整数值比较
<代码>[整数1操作符整数2]代码>
常用的测试操作符
- <李> <代码> eq> 代码:等于李> <李> <代码> - ne> 代码:不等于李> <李> <代码> gt代码>:大于李> <李> <代码>肝> 代码:小于李> <李> <代码> le> 代码:小于或等于李> <李> <代码> ge> 代码:大于或等于李>
<代码> [root@localhost ~] # | wc - l 7 (root@localhost ~) # $(谁| wc 1) gt 5],,回声“太多了!”,//用户数是否在5 太多了。 (root@localhost ~) # $(谁| wc 1)通用电气10],,echo"祝辞=10 !”,,,//用户数是否祝辞=10 代码>
<代码> [root@localhost ~] # FreeCC=$(自由- m | grep“Mem:“| awk & # 39;{打印6美元}”) (root@localhost ~) # (FreeCC - 1024美元),,echo $ {FreeCC} MB,,,,//空闲内存是否& lt;1024 mb, 275 mb 代码>
字符串比较
- <李>
格式1
<代码>[字符串1=字符串2] (字符串1 !=字符串2]代码>李> <李>
格式2
<代码> [- z字符串)代码>李>
常用的测试操作符
- <李>=:字符串内容相同李> <李> !=:字符串内容不同,!号表示相反的意思李> <>李- z:字符串内容为空李>
<代码> [root@localhost ~] # echo $朗,,,,,,//测试当前语言环境 zh_ CN.UTF-8 朗(root@localhost ~) # $ !=癳n.US"),,回声“不是en.US" 不是en。以前我们代码> > <>以前<代码> [root@localhost ~] #读- p”是否覆盖现有文件(是/否)?”,消,//测试读入的字符串是否为是的 是否覆盖现有文件(是/否)?是的 (root@localhost ~) # $ ACK=皔es"),,回声“覆盖“ 覆盖代码>
逻辑测试
<代码>格式1:[表达式1]操作符号(表达式2]… 格式2:命令1操作符命令2…代码>
常用的测试操作符
- <李>——或,,:逻辑与,“而且”的意思李> <>李- o或| |:逻辑或,“或”者的意思李> <>李!:逻辑否李>
<代码> [root@localhost ~] # (-dletc),,(- r/etc),,回应“你可以打开它” [root@localhost ~] # [- d/etc) II (- d/home),,回声”ok" 代码>
如果语句的分支结构
单分支结构
<代码>如果条件测试操作,, ,然后命令序列,, fi,,,,,,,,,,,,,,,,代码>
单分支如果语句
- <李>判断挂载点目录,若不存在则自动创建
<代码> root@localhost ~ # vim test01.sh # !/bin/bash dir=?mnt/aaa/? 如果(! - d $ dir),,,,,,,//当目录不存在时执行 然后 mkdir - p dir美元 如果代码>
双分支结构
李><代码>如果,条件测试操作 ,然后命令序列1 ,其他命令序列2 fi 代码>
双分支如果语句
- <李>判断目标主机是否存活,显示检测结果李>
<代码> # vim test02.sh root@localhost ~) # !/bin/bash ping - c 3 - 0.2 - w 3 1美元,比;/dev/null 如果[$ ?情商0] 然后,,,,,,,,,,,,,,,,平,//判断命令的检测结果,分别给出不同的提示 ,呼应“主机1美元了!” 其他的 ,呼应“主机1美元霸主地位; fi壳牌编程中的条件语句有哪些