首页 > 系统相关 >第六天:shell算术、逻辑运算及测试命令

第六天:shell算术、逻辑运算及测试命令

时间:2024-01-14 19:45:07浏览次数:31  
标签:shell 变量 read 短路 CMD1 第六天 逻辑运算 测试 输入

一、算术运算

    SHELL允许在某些情况下对算术表达式进行求值;   bash  只支持整数,不支持小数

1、实现算术运算

  

 2、内建的随机数生成器变量

  $RANDOM   取值范围:0-32767

3、增强型赋值:let varOPERvalue

  

 二、逻辑运算

  

   与:&

  或:|

  非:!

  异或:^      相同为假,不同为真

1、 短路运算

  短路与  &&          CMD1  &&  CMD2     当1为真时,再计算2值; 当1为假时,结果为0,不再执行2

  短路或 ||

  短路与  和短路或  组合    :  CMD1  && CMD2   ||  CMD3            先执行与再执行或,反过来不使用。

三、条件测试命令

1、条件测试命令格式

  test   EXPRESSION

  [EXPRESSION]    和test等价,建议使用【】

  [[EXPRESSION]]   相当于增强版的【】,支持【】的用法 ,且支持扩展正则表达式和通配符

2、变量测试 

  【 -v  NAME】  判断NAME变量是否定义 

3、数值测试

  -eq  是否等于    ==

  -ne  是否不等于    !=

  -gt  是否大于    >

  -ge  是否大于等于  >=

  -lt  是否小于    <

  -le  是否小于等于  <=

 4、字符串测试

 5、文件测试

  

   

   

 四、关于()和{}

  (CMD1; CMD2;...)和{CMD1;CMD2; ....;}都可以将多个命令组合在一起,批量执行

  

 五、组合测试条件

 1、第一种方式

  

2、第二种方式

  

 

六、使用read命令来接受输入

  使用read来把输入值分配给一个或多个shell变量,read从标准输入中读取值,给每个单词分配一个变量,所有剩余单词都被分配给最后一个变量,如果变量名没有指定,默认标准输入的值赋值给系统内置变量REPLY

  格式:   

read  [options] [name...]

 常见选项:  

-p           指定要显示的提示
-s            静默输入, 一般用于密码
-n  N        指定输入的字符长度N
-d  '字符'   输入结束符
-t  N        TIMEOUT为N秒

 

标签:shell,变量,read,短路,CMD1,第六天,逻辑运算,测试,输入
From: https://www.cnblogs.com/dujy/p/17956652

相关文章

  • Bash shell中四种算术运算方式的区别与联系简介
    在bashshell中,整数的运算也会偶尔遇到。为了彻底弄清其中的奥秘,我们通过实例验证的方式来探索一下常见的四种运算中的区别与联系。实例验证之前,我们来定义一组变量,并对其赋值:[root@GeekDevOps~]#a=9;b=13;c=-1;d=+4;e=7.2[root@GeekDevOps~]#echo$a$b$c$d$e913-1+4......
  • Bash shell中bash、sh、source及“.”点等五种执行方式的区别与联系
    在众多Linux发行版中bashshell可谓是随处可见。作为众多发行版的首选shell,对于bashshell的学习对我们来说,显得格外重要。在学习bashshell的过程中,bash、sh、source及英文输入状态下的点号经常交替出现,他们看起来作用都差不多,但是深究下去,他们也有着不小的区别与联系。下面就让......
  • 【Shell基础】Bash基础与Linux三剑客
    shell是什么?可以做哪些?Shell是⼀种解释性的语⾔,适⽤于基本的逻辑处理和不追求速度的应⽤。用于:人机交互批处理Unix、Linux、Mac、Android、IOS脚本自动化工作场景服务端测试移动测试持续集成与自动化部署shell种类bashshzshwindows没有/etc/shells,需要安......
  • 【Powershell】管理DHCPServer
    欢迎购买课程:https://edu.51cto.com/course/35515.html适合人群:对Powershell和域控有一定基础和感兴趣的运维你将会学到:利用Powershell创建和管理DHCPServer课程简介:本课程将教你利用Powershell创建和管理DHCPServer,特别是管理DHCPFailover,详解故障转移中的负载均衡和热备模式的差......
  • 【Powershell】域用户提权
    适合人群:适合对Powershell和域有一定基础和感兴趣的运维。课程目标:利用Powershell和计划任务让普通用户能用管理员权限执行程序或脚本课程简介:以往都需要借助收费第三方软件来完成的事情,现在可以通过强大的Powershell完成。利用Powershell和计划任务让普通用户能用管理员权限执行......
  • Shell编程自动化之if、for、while和函数
    一、if语句1.单分支格式if[条件判断式];then当条件判断成立时,执行的命令内容fiif[条件判断式]then当条件判断成立时,执行的命令内容fi2.双分支格式if[条件判断式];then当条件判断成立时,执行的命令内容else当条件判断......
  • Shell编程自动化之Shell编程基础
    一、Shell可以用来做什么1.自动化批量系统初始化程序;2.自动化批量软件部署程序;3.应用程序管理;4.日志分析处理程序;5.自动化备份恢复程序;6.自动化信息采集及监控程序;7.自动化管理程序;二、Shell概述1.Shell是操作系统的外壳,是用户操作系统的命令接口,是一个介于用户和系统内核......
  • 绕过安全限制,通过cmd执行PowerShell脚本(2)
    之前的做法是将PowerShell脚本的代码拼接成一个大字符串,然后通过在cmd中运行powershell去直接运行。现在觉得,多少有些脱裤子放屁。其实可以直接在cmd中设置脚本运行策略。改进后的脚本如下:首先是run.bat@echooffFOR/F"tokens=*USEBACKQ"%%FIN(`powershellGet......
  • MySQL一键安装Shell脚本的实现
    本文主要介绍了MySQL一键安装Shell脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧−目录一、脚本说明1、linux系统版本2、MySQL版本3、运行方式二、脚本内容一、脚本说明1、linux系统版本EL6,EL7,EL8,......
  • Windows 10 中,可以使用 PowerShell 添加打印和文件服务的角色功能组件,包括 Internet
    在Windows10中,可以使用PowerShell添加打印和文件服务的角色功能组件,包括Internet打印客户端、LPD打印服务和LPR端口监视器。以下是添加这些功能组件的PowerShell命令:首先,以管理员身份打开PowerShell终端。在开始菜单中搜索"PowerShell",然后右键点击"WindowsPo......