栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Shell(四)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Shell(四)

文章目录
    • 运算符
    • shell条件判断
    • shell流程控制

运算符
  1. 基本语法:$((运算式))或$[运算式]

  2. expr + , - , *, /, % 加,减,乘,除,取余,expr运算符间要有空格

  3. 应用案例:

    1. 计算3+3
    [root@centOS bin]# expr 2 + 3
    5
    
    1. 计算3-2的值
    [root@centOS bin]# expr 3-2
    1
    
    1. 计算(2+3)* 4 的值
    	[root@centOS bin]# expr `expr  2+3`  *4
    	20
    	```
    4. 采用$[运算式]方式
    ```c
    	[root@centOS bin]# S=$[(2+3)*4]
    	[root@centOS bin]# echo $S
    	20
    	```
    
    
shell条件判断
  1. 基本语法:[ condition ]注意:condition前后要有空格
  2. 条件非空即为true,[ ryx ] 返回true ,[] 返回false
  3. 常用的判断条件
    1. = 字符串之间比较
    2. 两个整数之间比较
      1. -lt 小于(less than)
      2. -le 小于等于(less equal)
      3. -eq 等于(equal)
      4. -gt 大于(greater than)
      5. -ge 大于等于(greater equal)
      6. -ne 不等于(Not equal)
    3. 按照文件权限进行判断
      1. -r 有读的权限
      2. -w 有写的权限
      3. -x 有执行的权限
    4. 按照文件类型进行判断
      1. -f 文件存在并且式一个常规文件(file)
      2. -e 文件存在(existence)
      3. -d 文件存在并且式一个目录(directory)
  4. 判断23是否大于等于22
    	[root@centOS bin]# [ 23 -ge 22 ]
    	[root@centOS bin]# echo $?
    	0
    	```
    
  5. ryx.sh是否具有写的权限
[root@CentOS bin]# [ -w ryx.sh ]
[root@CentOS bin]# echo $?
0
[root@CentOS bin]# 
  1. /home/bin/ryx/sh 目录是否存在
[root@CentOS bin]# [ -e /home/bin/ryx.sh ]
[root@CentOS bin]# echo $?
1
[root@CentOS bin]# 
  1. 多条件判断(&& 表示前一条命令执行成功时才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条命令)
[root@CentOS bin]# [ condition ] && echo OK || echo notok
OK 
[root@CentOS bin]# [ condition ] && [ ] || echo notok
notok
shell流程控制
  1. 基本语法:
if [ 条件判断式 ];then 
  程序 
fi 
或者 
if [ 条件判断式 ] 
  then 
    程序 
fi
  1. [ 条件判断式 ],中括号和条件判断式之间必须有空格
  2. if 后要有空格
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/307816.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号