shell if语句和test命令
来源:互联网 发布:彩先知软件 编辑:程序博客网 时间:2024/09/21 09:05
在shell中if条件判断语句和我们的C、C++、Java等语言是不同的,shell的if语句条件必须用[ ]括起来,另外[ ]里外都需要用空个与周围隔开,否则报错;另外与if配对的有else if和else,如果我们要写这两个必须后面跟有东西,否则也会报错,在编程中不跟是可以的:
if(a==b)printf("a=b");else{//什么都没有}
但是shell中是不可以的,简单的看一下shell里的if、else if和else的简单使用:
#!/bin/basha=10b=20if [ $a == $b ]#注意[]里外的空格then #if条件成立后引出后续echo 'a=b'elif [ $a -gt $b] #如果使用else if 必须在最后多加一个fi结束then echo "a > b" #所有包含if的判断,都需要then引出后续else#必须有操作,否则只写else报错echo 'a<b' fi #if结束标志,必须有
以上就是简单的条件判断语句举例说明,下面我们来看看shell的test命令说明:Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。下面我们接着对这个三个方面进行举例说明:
1、数字:
这里的数值的比较条件分别为:
-eq 是否相等 -ne 是否不等 -gt 是否大于 -ge 是否大于等于 -lt 是否小于 -le 是否小于等于
如果变量名过长取值比较需要加[],如比较val和val1:$[val] -eq $[val1]
2、字符串比较:
字符串的比较:
= 两个字符串是否相等 != 两个字符转是否不等 -n 字符串是否为空 -z 字符串是否不空
字符串变量取值规则和数字一样,变量长的话加[]。
3、文件测试:
文件是针对单个文件的:
-e 文件名 如果文件存在则为真-r 文件名 如果文件存在且可读则为真-w 文件名 如果文件存在且可写则为真-x 文件名 如果文件存在且可执行则为真-s 文件名 如果文件存在且至少有一个字符则为真-d 文件名 如果文件存在且为目录则为真-f 文件名 如果文件存在且为普通文件则为真-c 文件名 如果文件存在且为字符型特殊文件则为真-b 文件名 如果文件存在且为块特殊文件则为真
具体展示就不在这里展示了,最后我们来看看执行结果:
阅读全文
0 0
- shell if语句和test命令
- shell脚本:使用if-then语句和test命令
- shell --if语句--test用法
- Shell if else test 语句
- shell 之 test 和 [] 以及 if
- shell中的if语句和case语句
- bash shell if-test
- shell if test
- shell if test
- shell脚本:test命令 if-then for while 学习笔记
- Shell中的if和case判断语句
- shell测试和比较函数--test、[、[[、((、和 if-then-else
- Shell 函数 和 Shell echo命令 和 test命令
- sql中的if else语句和if test 语句的区别
- shell命令中if语句的后街分号作用
- shell test和find命令实例解析
- shell if 判断语句
- shell编程 if语句
- Hbase shell
- hadoop完全分布环境搭建
- browserify出现ParseError: Unexpected character '�'
- Python-IDLE实现清屏
- [Leetcode]Dynamic Programming-note
- shell if语句和test命令
- 阿里云|REDIS 开启多个端口
- JavaScript实现图片轮播图
- 初入Tensorflow一览(1)
- 9.10NOIP模拟赛
- linux中磁盘的挂载
- 贪婪算法之找零钱
- element ui 的树形组件上手
- Java中的static使用之静态变量、静态方法和静态初始化块