Linux下的Shell基础——流程控制(三)

简介: Linux下的Shell基础——流程控制(三)

一、if 判断

(1)基本语法

       1)单分支

        2)多分支

注意事项:

       ①[ 条件判断式 ],中括号和条件判断式之间必须有空格

       ②if 后要有空格

(2)案例实操

输入一个数字,如果是 1,则输出 haha,如果是 2,则输出 hehe, 如果是其它,则输出wuwu

=

二、case语句

(1)基本语法

注意事项:

       (1)case 行尾必须为单词in,每一个模式匹配必须以右括号“)”结束。

       (2)双分号;;表示命令序列结束,相当于 java 中的 break。

       (3)最后的*)表示默认模式,相当于 java 中的 defaut

(2)案例实操

输入一个数字,如果是 1,则输出 haha,如果是 2,则输出 hehe,如果是其它,输出 wuwu

三、for循环

(1)基本语法 1

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

do

        程序

done

(2)案例实操

       从 1 加到 10

(3)基本语法 2

for 变量 in 值 1 值 2 值 3…

do

       程序

done

(4)案例实操

(1)打印所有输入参数

(2)比较∗和*和@区别

∗和*和@都表示传递给函数或脚本的所有参数,不被双引号“”包含时,都以11 2 …$n 的形式输出所有参数。

四、while循环

(1)基本语法

       while [ 条件判断式 ]

        do

                程序

        done

(2)案例实操

       从 1 加到 100

五、read 读取控制台输入

(1)基本语法

       read (选项) (参数)

       ①选项:

               -p:指定读取值时的提示符;

               -t:指定读取值时等待的时间(秒)如果-t 不加表示一直等待

       ②参数变量:指定读取值的变量名

(2)案例实操

       提示 7 秒内,读取控制台输入的名称

六、函数

(1)系统函数

       basename

       (1)基本语法

                basename [string / pathname] [suffix] (功能描述:basename 命令会删掉所有的前缀包括最后一个(‘/’)字符,然后将字符串显示出来。

              basename 可以理解为取路径里的文件名称

               选项:

               suffix 为后缀,如果 suffix 被指定了,basename 会将 pathname 或 string 中的suffix 去掉。

      (2)案例实操

       截取该~/shell/read_test.sh 路径的文件名称。

       

       dirname

       (1)基本语法

               dirname 文件绝对路径 (功能描述:从给定的包含绝对路径的文件名中去除文件名 (非目录的部分),然后返回剩下的路径(目录的部分))

               dirname 可以理解为取文件路径的绝对路径名称

       (2)案例实操

       获取 ~/shell/read_test.sh 文件的路

(2)自定义函数

       (1)基本语法

               [ function ] funname[()]

               {

                        Action; [return int;]

               }

      (2)经验技巧

               1)必须在调用函数地方之前,先声明函数,shell 脚本是逐行运行。不会像其它语言一 样先编译。

               2)函数返回值,只能通过$?系统变量获得,可以显示加:return 返回,如果不加,将 以最后一条命令运行结果,作为返回值。return 后跟数值 n(0-255)

       (3)案例实操

       计算两个输入参数的和。


目录
相关文章
|
2月前
|
Shell Linux
Linux shell编程学习笔记30:打造彩色的选项菜单
Linux shell编程学习笔记30:打造彩色的选项菜单
|
1月前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
61 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
16天前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
1月前
|
监控 安全 Java
linux服务器上启动framework应用程序流程
【10月更文挑战第17天】在Linux服务器上启动Framework应用程序需经过准备工作、部署、启动、监控及访问五个步骤。首先确保服务器满足系统要求并安装依赖项;接着上传应用文件,编译构建,配置参数;然后通过脚本、命令行或系统服务启动应用;启动后检查日志,监控性能;最后确认访问地址,验证应用运行状态。具体操作应参照应用文档。
|
1月前
|
Java Shell 网络安全
Shell 流程控制
10月更文挑战第4天
34 2
|
2月前
|
Shell Linux
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
|
30天前
|
监控 Java Linux
linux服务器上启动framework应用程序流程
【10月更文挑战第18天】在 Linux 服务器上启动框架应用程序的流程包括:准备工作(确保访问权限、上传部署文件、了解启动要求)、检查依赖项、配置环境变量、切换到应用程序目录、启动应用程序、监控启动过程以及验证应用程序是否正常运行。具体步骤可能因应用程序类型和框架而异。
|
2月前
|
人工智能 监控 Shell
常用的 55 个 Linux Shell 脚本(包括基础案例、文件操作、实用工具、图形化、sed、gawk)
这篇文章提供了55个常用的Linux Shell脚本实例,涵盖基础案例、文件操作、实用工具、图形化界面及sed、gawk的使用。
386 2
|
1月前
|
存储 Shell Linux
【Linux】shell基础,shell脚本
Shell脚本是Linux系统管理和自动化任务的重要工具,掌握其基础及进阶用法能显著提升工作效率。从简单的命令序列到复杂的逻辑控制和功能封装,Shell脚本展现了强大的灵活性和实用性。不断实践和探索,将使您更加熟练地运用Shell脚本解决各种实际问题
23 0
|
2月前
|
Shell Linux 开发工具
linux shell 脚本调试技巧
【9月更文挑战第3天】在Linux中调试shell脚本可采用多种技巧:使用`-x`选项显示每行命令及变量扩展情况;通过`read`或`trap`设置断点;利用`echo`检查变量值,`set`显示所有变量;检查退出状态码 `$?` 进行错误处理;使用`bashdb`等调试工具实现更复杂调试功能。