Shell流程控制(重点)、if 判断、case 语句、let用法、for 循环中有for (( 初始值;循环控制条件;变量变化 ))和for 变量 in 值 1 值 2 值 3… 、while 循环

简介: “{}”在linux shell里面表示生成序列、在for循环中$*和$@的区别、注意事项: ①[ 条件判断式 ],中括号和条件判断式之间必须有空格②if 后要有空格、在中括号里面的话就不用&&(||)而是用-a(-and)(和-o(-or))、用逻辑与&&逻辑或||连接(单分支)(1)case 行尾必须为单词“in”,每一个模式匹配必须以右括号“)”结束。(2)双分号“;;”表示命令序列结束,相当于 java 中的 break。 (3)最后的“*)”表示默认模式,相当于 java 中的 default。当

@[toc]
如果想看更详细的Shell总结请到我之前写的博客http://t.csdn.cn/cQArA

1.流程控制(重点)

1.1if 判断

1.1.1基本语法

注意事项:
①[ 条件判断式 ],中括号和条件判断式之间必须有空格
②if 后要有空格

1.1.1.1单分支

if [ 条件判断式 ];then
 程序 
fi
或者 
if [ 条件判断式 ] 
then
 程序 
fi

1.1.1.2多分支

if [ 条件判断式 ] 
then
    程序 
elif [ 条件判断式 ] 
then
    程序 
else
    程序 
fi

1.1.2案例

1.1.2.1单分支

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
当这样写的时候,没有传入参数时,会报错的,所以要按照下面的做法做

在这里插入图片描述

在这里插入图片描述
这样的话就不会报错了,因为要是不输入参数的时候两边也都不会为空

1.1.2.2用逻辑与&&逻辑或||连接(单分支)

1.1.2.2.1逻辑与&&

在这里插入图片描述

在中括号里面的话就不用&&而是用-a(-and)

在这里插入图片描述

1.1.2.2.2逻辑或||

在这里插入图片描述

在中括号里面的话就不用||而是用-o(-or)
在这里插入图片描述

1.1.2.3多分支

在这里插入图片描述
..在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1.2case 语句

1.2.1基本语法

case $变量名 in 
"值 1")
    如果变量的值等于值 1,则执行程序 1 
;;
"值 2")
    如果变量的值等于值 2,则执行程序 2 
;; 
    …省略其他分支… 
*) 
    如果变量的值都不是以上的值,则执行此程序 
;;
esac

1.2.2注意事项:

(1)case 行尾必须为单词“in”,每一个模式匹配必须以右括号“)”结束。 (2)双分号“;;”表示命令序列结束,相当于 java 中的 break。
(3)最后的“*)”表示默认模式,相当于 java 中的 default。

1.2.3案例cast_test.sh

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.3for 循环

1.3.1基本语法1

for (( 初始值;循环控制条件;变量变化 )) 
do 
    程序 
done

1.3.2基本语法 2

for 变量 in 值 1 值 2 值 3… 
do 
    程序 
done

1.3.3案例

1.3.3.1for (( 初始值;循环控制条件;变量变化 ))

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1.3.3.2“{}”在linux shell里面表示生成序列

在这里插入图片描述

{1..100}表示从1到100,中间是两个点,别看错了

1.3.3.3for 变量 in 值 1 值 2 值 3…

在这里插入图片描述

1.3.3.2在for循环中$*和$@的区别

在这里插入图片描述
$*和$@没有加双引号的时候输出结果为下:

在这里插入图片描述
他们两个的输出结果一致

在这里插入图片描述

当加上双引号后。结果如下:
在这里插入图片描述

当它们被双引号“”包含时,
$*会将所有的参数作为一个整体,以“$1 $2 …$n”的形式输 出所有参数;
$@会将各个参数分开,以“$1” “$2”…“$n”的形式输出所有参数。

1.4while 循环

1.4.1基本语法

while [ 条件判断式 ] 
do 
    程序 
done

1.4.2从1加到100

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.4.3let用法

在新版shell中支持用let的,他的语言是和高级语言差不多的
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
如果想看更详细的Shell总结请到我之前写的博客http://t.csdn.cn/cQArA

目录
相关文章
|
4天前
|
存储 运维 Shell
shell中for while until 三种循环的用法
shell编程中,有几种常见的循环结构,包括for循环、while循环和until循环,总的来说,循环shell编程中扮演着至关重要的角色,它们使得自动化任务变得更加容易,提高了效率,并且可以处理各种各样的编程需求。
257 13
shell中for while until 三种循环的用法
|
4天前
|
Java 大数据 Shell
Shell基础学习---2、运算符、条件判断、流程控制(第一天学习)
大数据开发学习 Shell基础学习---2、运算符、条件判断、流程控制
|
4天前
|
Shell 程序员 数据安全/隐私保护
shell 脚本 if-else判断 和流程控制 (基本语法|基础命令)
shell 脚本 if-else判断 和流程控制 (基本语法|基础命令)
|
4天前
|
运维 Shell Linux
第四章 Shell流程控制
第四章 Shell流程控制
|
4天前
|
监控 Shell 持续交付
通过Shell脚本实现局域网管理软件的自动化部署流程
本文介绍了如何使用Shell脚本自动化局域网软件部署流程,以简化管理和提高效率。脚本包括定义安装目录、服务器列表和软件包,然后遍历服务器进行传输和解压。此外,还展示了通过Shell脚本监控网络设备和软件状态,并自动将监控数据提交到网站的功能,有助于及时发现和解决问题,提升系统稳定性。通过这种方式,可有效减轻管理员的工作负担,降低成本。
95 0
|
4天前
|
监控 Shell
shell学习(五) 【循环控制continue,break、while 语法】
shell学习(五) 【循环控制continue,break、while 语法】
13 0
|
4天前
|
监控 Shell 持续交付
利用Shell脚本自动化员工电脑监管软件的部署流程
在企业管理中,对员工的电脑活动进行监管是一项重要任务。而为了实现这一目标,部署监管软件是必不可少的。本文将介绍如何利用Shell脚本来自动化部署员工电脑监管软件的流程。我们将演示如何使用Shell脚本来自动下载、安装和配置监管软件,并且在部署完成后自动启动服务。
164 4
|
4天前
|
Shell
shell脚本for循环复杂用法
shell脚本for循环复杂用法
51 5
|
4天前
|
算法 Shell Linux
Linux的shell命令——判断与循环
Linux的shell命令——判断与循环
45 1
|
4天前
|
Java Shell Linux
Linux下的Shell基础——流程控制(三)
Linux下的Shell基础——流程控制(三)
39 0
Linux下的Shell基础——流程控制(三)