shell脚本中的逻辑判断、文件目录属性判断、if特殊用法、case判断
一:shell脚本中的逻辑判断
格式1:if 条件 ; then 语句; fi
格式2:if 条件; then 语句; else 语句; fi
格式3:if …; then … ;elif …; then …; else …; fi
逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(<); -ge(>=); -le(<=);-eq(==); -ne(!=) 注意到处都是空格
可以使用 && || 结合多个条件
if [ $a -gt 5 ] && [ $a -lt 10 ]; then
if [ $b -gt 5 ] || [ $b -lt 3 ]; then
二:文件目录属性判断
[ -f file ]判断是否是普通文件,且存在
[ -d file ] 判断是否是目录,且存在
[ -e file ] 判断文件或目录是否存在
[ -r file ] 判断文件是否可读
[ -w file ] 判断文件是否可写
[ -x file ] 判断文件是否可执行
三:if特殊用法
if [ -z "$a" ] 这个表示当变量a的值为空时会怎么样
if [ -n "$a" ] 表示当变量a的值不为空
if grep -q '123' 1.txt; then 表示如果1.txt中含有'123'的行时会怎么样
if [ ! -e file ]; then 表示文件不存在时会怎么样
if (($a<1)); then …等同于 if [ $a -lt 1 ]; then…
[ ] 中不能使用<,>,==,!=,>=,<=这样的符号
四:case判断
格式 case 变量名 in value1) command ;; value2) command ;; *) commond ;; esac
在case程序中,可以在条件中使用|,表示或的意思, 比如 2|3) command ;;
案例一:
#!/bin/bash
read -p "Please input a number: " n
if [ -z "$n" ]
thenecho "Please input a number."exit 1
fin1=`echo $n|sed 's/[0-9]//g'`
if [ -n "$n1" ]
thenecho "Please input a number."exit 1
fiif [ $n -lt 60 ] && [ $n -ge 0 ]
thentag=1
elif [ $n -ge 60 ] && [ $n -lt 80 ]
thentag=2
elif [ $n -ge 80 ] && [ $n -lt 90 ]
thentag=3
elif [ $n -ge 90 ] && [ $n -le 100 ]
thentag=4
else tag=0
fi
案例二:
case $tag in1)echo "not ok";;2)echo "ok";;3)echo "ook";;4)echo "oook";;*)echo "The number range is 0-100.";;
esac
转载于:https://blog.51cto.com/10941098/2175812
shell脚本中的逻辑判断、文件目录属性判断、if特殊用法、case判断相关推荐
- linux判断文件类型是否存在脚本,shell脚本中的逻辑判断 文件目录属性判断 if特殊用法 case判断...
一.shell脚本中的逻辑判断 在shell脚本中,很多都会逻辑判断,判断某一个数值,判断某一个文件,或者某一个目录,我们针对判断结果再做一些操作,如果没有判断,就没法做一些操作 格式1:if条件:t ...
- shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case判断
2019独角兽企业重金招聘Python工程师标准>>> shell脚本中的逻辑判断 格式1:if 条件 ; then 语句; fi 格式2:if 条件; then 语句; else ...
- linux复杂逻辑判断,20.5 shell脚本中的逻辑判断
shell脚本中的逻辑判断 格式1:if 条件 ; then 语句; fi 格式2:if 条件; then 语句; else 语句; fi 格式3:if -; then - ;elif -; then ...
- linux脚本判断文件属性,linux的shell脚本中的逻辑判断、文件目录属性判断、if特殊用法、case判断...
格式1:if 条件 ; then 语句; fi (常用) #以命令的方式表达 [[email protected] ~]# for i in `seq 1 5`; do echo $i; done 1 ...
- 20、4 Shell脚本中的逻辑判断
在shell脚本当中很多地方都会用到逻辑判断,判断某一个数值,判断某个目录或文件,然后针对判断的结果再做一个操作,若没有判断,是无法进行一些操作的. 例如cp一些文件,或者MV,或是删除某个文件,没 ...
- linux shell脚本 判断,Shell脚本中的逻辑判断
-gt 表示大于 -lt 表示小于 -ge 表示大于等于 -le 表示小于等于 -eq 表示等于 -ne 表示不等于 语法: 格式1:if 条件 ; then 语句; fi #如果满足条件,然后怎么样 ...
- shell脚本中判断大于、小于、等于、不等于的符号
shell脚本中判断大于.小于.等于.不等于的符号 在shell中有时候会用到对数字进行判断的场景,尤其在写脚本判断参数的时候,以下有几个命令需要记住 大于 -gt (greater than) 小于 ...
- linux命令 sh -s,shell脚本中 if 判断时候-s是什么意思?
指的是文件大小非0时为真. shell中怎么判断输入的是否是数字: 第一种:sed格式 首先:我们先(在命令行直接输出模拟一下,如果都正确再在shell脚本中进行书写.)直接echo输出一下 echo ...
- Shell脚本中获取命令运行结果、特殊变量使用、条件判断等常用操作
文章目录 前言 获取命令执行结果 使用反引号 `` ` ``command `` ` ``来执行命令 使用括号组合 $(command) 来执行命令 两种方式的区别 特殊变量使用 $0 $1 $2 . ...
- Shell 脚本中判断字符串非空
前言 Shell 脚本中经常用到字符串,对字符串是否为空的判断很关键. 正文 在 Shell 中利用 -n 来判断字符串是否非空. 例子: if [[ str1 = str2 ]] # 当字符串 st ...
最新文章
- Xcode多Target设置
- 被误解的MVC和被神化的MVVM
- java自定义分页标签_自定义分页标签--仿javaeye分页效果
- mybatis、mybatisplus的常用操作
- c语言中如何存储日志,C语言解析日志,存储数据到伯克利DB
- MySQL Operators(比较操作符,逻辑运算符)
- oracle怎么把in值列出来,oracle – SELECT的解析和绑定变量.. WHERE列IN(..)查询
- js系列教程8-事件全解
- 使用proxychains 代理终端
- 《Don't make me think 》关于Web可用性的三大定律
- IDEA设置代码背景豆沙色
- 单片机 架构 程序 经验总结_单片机学习心得体会_经验总结
- 自动光学检测系统(AOI)光学成像系统设计
- 如何判断等保测评机构有资质?符合要求?
- linux加静态路由命令,LINUX添加静态路由
- 通过GitHub和GoDaddy搭建静态个人博客
- 汽车变速系统的换挡律
- [PTA]实验7-2-6 打印杨辉三角
- php的登录页面怎么弄,php登录界面_php简单登录页面
- 不只是休闲:关于体感游戏的一些思考(六)--- 飞行
热门文章
- CentOS下Privoxy和Iptables 实现透明代理,修改http-header
- iOS开发学习记录【整理】
- Ubuntu部署KVM服务器
- 应邀参加51CTO专家座谈门诊——驱动开发技术探析【2008.11.20在线】
- Package has no installation candidate
- Sofia-SIP辅助文档六 - Sofia-SIP中的SIP和SDP特性
- Linux内核中的atoi,itoa等函数
- 以高通camera 申请ion内存看dma-buf
- 使用tinymini210开发远程的温度监控系统,实现C#和安卓客户端显示数据和控制
- 优先队列重载(理解)