shell流程控制
2021/8/22 7:06:13
本文主要是介绍shell流程控制,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、shell流程控制
1、和其他语言不一样,sh 的流程控制不可为空。如果 else 分支没有语句执行,就不要写这个 else。
2、if else 流程
(1)if 语句语法格式:
if condition then command1 command2 ... commandN fi
写成一行(适用于终端命令提示符):
if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi
末尾的 fi 就是 if 倒过来拼写,表示 if 结束。
(2)if else 语法格式:
if condition then command1 command2 ... commandN else command fi
(3)if else-if else 语法格式:
if condition1 then command1 elif condition2 then command2 else commandN fi
#以下实例判断两个变量是否相等: a=10 b=20 if [ $a == $b ] then echo "a 等于 b" elif [ $a -gt $b ] then echo "a 大于 b" elif [ $a -lt $b ] then echo "a 小于 b" else echo "没有符合的条件" fi #输出结果:a 小于 b
3、for 循环 —— for循环一般格式为:
for var in item1 item2 ... itemN do command1 command2 ... commandN done
写成一行:
for var in item1 item2 ... itemN; do command1; command2… done;
当变量值在列表里,for 循环即执行一次所有命令,使用变量名获取列表中的当前取值。命令可为任何有效的 shell 命令和语句。in 列表可以包含替换、字符串和文件名。
in列表是可选的,如果不用它,for循环使用命令行的位置参数。
#例如,顺序输出当前列表中的数字: for loop in 1 2 3 4 5 do echo "The value is: $loop" done #顺序输出字符串中的字符: #!/bin/bash for str in This is a string do echo $str done
这篇关于shell流程控制的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)