Shell-条件、if then、case

Shell-条件、if then、case

条件语法

if [ condition ] 注意前后要有空格,非空则返回true

例:
if [ "OK"="OK" ]

if[  ]		//即使是空的,里面也必须有两个空格
then
		echo "Kong!"

判断语句

等号判等

= 字符串比较是否等

两个整数的比较

-ne 不等于
-lt	小于	
-le	小于等于
-eq	等于
-gt 大于
-ge	大于等于

按照文件权限进行判断

-r
-w
-x

按照文件类型判断

-f
-e
-d

流程控制

if [ condition ]
then
		echo "Something"
elif [ condition1 ]
then 
		echo "Anything"

case语句

当命令行给出的参数是1,就输出“Monday”,当命令行给出的参数是2,就输出“Tuesday”,其他情况都输出"Other"。【case语句】

直接看例:

case $1 in
"1")
echo "周一"
;;
"2")
echo "周二"
;;
*)
echo "Other"
;;
esac	#case反写,表示结束。这个语法看起来怎么这么怪?看开一点吧。——韩顺平老师

例:

ok是否等于ok,相等则输出"equal"【字符比较】

if [ "OK"="OK" ]
then
	echo "equal"

23是否大于22【整数比较】

if [ 23 -gt 22]
then
	echo "Bigger"

/root/shcode/aaa.txt这个文件是否存在【文件存在?】

if [ -f /root/shcode/aaa.txt ]
then 
		echo "YES"

编写shell程序,如果输入的参数大于等于60.则输出"pass"不然就"failed"【if elif判断语句】

if [ $1 -ge 60 ]
then 
	echo "pass"
elif [ $1 -lt 60 ]
then
	echo "failed"
	
posted @   Dinesaw  阅读(101)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示