首页 > 系统相关 >shell - 流程控制语句

shell - 流程控制语句

时间:2024-06-20 10:10:27浏览次数:13  
标签:语句 do cnt shell 流程 sth echo while condition

if条件语句

if condition
then
	# do sth.
elif condition
then
	# do another.
else
	# do others.
fi

# 有些人喜欢这样写,看起来更紧凑一些
if condition; then
	# do sth.
elif condition; then
	# do another.
else
	# do others.
fi

样例:

a=10;b=20;

# 下面这一句,方括号是有用的,并且方括号内,前后两个空格不能省略
if [ $a -eq $b ];then
	echo "$a -eq $b: a 等于 b"
else
	echo "$a -eq $b: a 不等于 b"
fi

switch语句

value=3;
case $value in
	1)
		# do sth.
		;;
	2)
		# do sth.
		;;
	*)
		# do others.
		;;
esac

样例

a = 4

case $a in
    1)
        echo ${a}等于1
        ;;  
    2)
        echo ${a}等于2
        ;;  
    3)                                                
        echo ${a}等于3
        ;;  
    *)
        echo 其他
        ;;  
esac

while语句

while condition
do
	# do sth.
done

样例:

# 打印 1 之后退出循环
while true; do echo 1; break; done;

# 递增
cnt=0; while (($cnt < 10)); do echo $cnt; cnt=$((cnt + 1)); done;

for语句

# for in,这里需要注意,in与花括号之间的空格不能省略
for i in {a..z}
do
	echo $i
done
# for i
for ((i=1;i<=10;i++))
do
	# do sth.
done

样例:

# 常规用法
for((i=1; i<=10; i++)); do echo i; done;

# 这个脚本挺常用的,循环调用 n 次脚本
for a in {1..10}; do echo a; done;

# 遍历所有文件
for f in ./*; echo $f; done;

until语句

until 的功能:除非满足条件,否则就……
与 while 写法一致,但是判断条件是相反的,while 的功能是:如果满足条件,就……

until condition
do
	# do sth.
done

样例:

# until 和 while 相反,条件为真的时候退出。
cnt = 0; until (($cnt > 10));do [cmd];cnt = $((cnt + 1));done;

标签:语句,do,cnt,shell,流程,sth,echo,while,condition
From: https://www.cnblogs.com/chenss15060100790/p/18258144

相关文章

  • 通过 HIDS 告警分析 webshell 行为
    准备漏洞环境1. 下载 vulhub 仓库gitclonehttps://github.com/vulhub/vulhub.git2.  修改 tomcat 弱口令漏洞环境配置vivulhub/tomcat/tomcat8/tomcat-users.xml将配置文件中的 user 和 password 修改为非弱口令3.  启动漏洞环境(根据实际 docker 环境......
  • 【大语言模型】本地快速部署Ollama运行大语言模型详细流程
    ......
  • 可视化表单拖拽生成器优势多 助力流程化办公!
    当前,很多企业需要实现流程化办公,进入数字化转型时期。要想实现这一目标,就需要借助更优质的平台产品。低代码技术平台是得到企业喜爱的发展平台,拥有可视化操作、灵活、高效、更可靠等优势特点,在推动企业实现流程化办公的过程中具有重要的应用价值。一起来看看可视化表单拖拽生成器......
  • Django链接数据库,ORM迁移数据库,ORM操作之数据操作,Django框架之生命周期流程图,Djan
    ⅠDjango链接数据库默认的Django数据库是sqlite3链接MySQL数据库--->电脑上则会运行MySQL【一】下载数据库【二】在settings.py设置定义参数#链接MySQL数据库DATABASES={'default':{#指定我们使用的引擎是mysql数据库的引擎'ENGINE':'......
  • shell语言入门
    前言Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁,是linux内置的一款软件。通过编写Shell的脚本,可以更好的使用linux系统(比如、安装卸载软件、增删改查文件等等),毕竟大部分linux、系统都没有界面,不像windows那样鼠标点点就完成了大部分需求。shell软件的种类有很多......
  • Python最常见的语句、函数,想学好Python必须要懂得!
    1.函数的概念概念写了一段代码实现了某个小功能;然后把这些代码集中到一块,起一个名字,下一次就可以根据这个名字再次使用这个代码,这就是函数。作用方便代码的重复使用。分解任务,简化程序逻辑使代码更加模块化函数分类内建函数三方函数自定义函数2.函数的基本使用简单定......
  • <编译器> 7. 中间代码 | 4. 主要语句的IR树
    1.调用output:=concat(output,s)2.数组,赋值a[i+1]:=0数组变量a[i]为a(基地址)+i*w(偏移量)3.while循环伪代码:whilecnddobodystart:ifnotcndgotodonebodygotostartdone两种实现:4.for循环:变量声明+while循......
  • Android嵌套滑动NestedScrollingChild以及NestedScrollingParent处理流程
    publicinterfaceNestedScrollingChild{publicvoidsetNestedScrollingEnabled(booleanenabled);publicbooleanisNestedScrollingEnabled();publicbooleanstartNestedScroll(intaxes);publicvoidstopNestedScroll();publi......
  • mumu模拟器 adb shell 登录后执行命令 Inappropriate ioctl for device
    前言全局说明mumu模拟器adbshell登录后执行命令Inappropriateioctlfordevice一、说明二、问题执行任何命令,都提示:Inappropriateioctlfordevice三、解决方法方法一:执行过sudo或su重新登录方法二:退出,执行adbroot后再执行adbshell登录四、......
  • 运维之shell脚本初识
     脚本工具可以帮助我们完成一些需要重复劳动的工作;基础语法:"#"为注释符号1:#指定脚本运行环境为/bin/bash #!/bin/bash2:输入参数,xxx为变量名,多个变量名用空格隔开readxxx   输出参数echoxxx3: 变量和运算符的定义:这是每个编程语言必不缺少的部分     ......