Linux运维养成记-结构化命令一

1. if 语句

1.1 if - then-else 语句

if-then-else 用法如下:

if command
then
	command
else
	command
fi

1.2 if 语句嵌套

用法如下:

if command1
then
	command1
elif command2
then
	command2
elif command3
then
	command3
else
	command4
fi

2. test 语句

2.1 test 语句基本用法

用法如下:

if test condition
then
	commands
fi

还有一种方法无需再语句中声明 test,使用[]符号,方法如下:

if [ condition ]
then
	commands
fi
#这里方括号[]中间的条件语句两边必须加空格

2.2 数值比较

使用test最常见的情形是对两个数值进行比较,下表为 test 数值比较表达式:

比较描述
n1 -eq n2n1 等于 n2
n1 -ge n2n1 大于或等于 n2
n1 -gt n2n1 大于 n2
n1 -le n2n1 小于等于 n2
n1 -lt n2n1 小于 n2
n1 -ne n2n1 不等于 n2

2.3 字符串比较

test也支持字符串比较,下表为字符串比较表达式:

比较描述
str1 = str2两字符串相同
str1 != str2两字符串不相同
str1 \< str2str1小于 str2,这里需加转义符,否则系统会将<当做重定向符号
str1 \> str2str1大于 str2,这里需加转义符,否则系统会将>当做重定向符号
-n str1str1 的长度不为 0
-z str1str1 的长度为 0

在测试比较中,大写字母被认为是小于小写字母的,这和sort命令相反。

2.4 文件比较

shell 编程中常用到测试文件系统上文件及目录的状态,下面列出这些比较:

比较描述
-d file检查 file 是否存在且为目录
-f file检查 file 是否存在且为文件
-e file检查 file 是否存在
-r检查 file 是否存在且可读
-w检查 file 是否存在且可写
-x检查 file 是否存在且可执行
-s检查 file 是否存在且非空
-O file检查 file 是否存在且属于当前用户所有
-G file检查 file 是否存在且属于当前用户所在的组
file1 -nt file2检查 file1 是否比 file2 新
file1 -nt file2检查 file1 是否比 file2 旧

这里最后两个方法是用来对两个文件的创建时间进行比较。

2.5 复合条件测试

if 语句允许使用布尔逻辑组合进行测试,如下:

  • [ condition1 ] && [ condition2 ]
  • [ condition1 ] || [ condition2 ]
    第一种使用的是 AND 布尔运算来组合两个条件,必须两个条件同时成立才为真。
    第二种使用的是 OR 布尔运算来组合两个条件,两者只要有 一为真即真。

3. case 语句

case命令会采用列表格式来检查单个变量的多个值,用法如下:

case variable in 
pattern1 | pattern2)
	command1;;
pattern3)
	command2;;
*)
command3;;
esac
#这里每个命令结束要用两个分号;;隔开,最后的星号*表示与已知模式不匹配的值。

例:

#!/bin/sh

case $USER in
A | B)
	echo "hello $USER"
	echo "hello world";;
C)
	echo "hello C";;
*)
	echo "sorry, i do not know your name";;
esac
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了python应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值