linux-shell条件测试语句和if流程控制语句的使用

"linux"

Posted by yangsir on March 6, 2024

“Yeah It’s on. ”

shell条件测试语句和if流程控制语句的使用

1、 read命令

除了“=”方式给变量赋值外,还可以使用bash的内置命令read来给变量赋值。

定义

read命令用来提示用户从键盘读入数据,赋给变量。从而实现交互过程。

语法格式:

read [选项] [变量名1] [变量名1]……

-p:用来设置提示信息

-t:设置等待时间,单位是秒,若在规定时间内未输入自动跳出。

执行时将从标准输入设备(键盘)读入一行内容,并以空格作为分隔符,将读入的各字段挨个赋值给指定的变量,多余的内容赋值给最后一个变量。若指定的变量只有一个,则将整行内容赋值给此变量。

2、test测试命令

Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试

格式:test 测试条件 或 [ 测试条件 ]

注意事项:中括号两边要有空格

条件测试常见的几种语法形式:

​ test 表达式

​ [ 表达式 ]

注意事项,中括号两边要有空格

其中:test和[ ]是等价的

1.1、 整数值比较

整数值比较指的是根据给定的两个整数值,判断第一个数与第二个数的关系,如是否大于、等于、小于第二个数。整数值比较的常用操作选项如下:

image-20240306131610768

范例1:

若判断当前已登录的用户数,当超过5个时输出“Too many”,可以执行一下操作

[ $Unum -gt 5 ]&& echo “Too many”

image-20240306131555604

&&与;的区别:都是逻辑与符号

**   : 逻辑或符号**