shell 9test命令
shell中的test用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。
1. 数值测试
| -eq | 等于为true |
| -ne | 不等,为true |
| -gt | 大于,为true |
| -ge | 大于等于,为true |
| -lt | 小于,为true |
| -le | 小于等于,为true |
```
#shell
#!/bin/sh
a=3
b=5
if test $a -eq $b;then
echo "$a=$b"
else
echo "$a!=$b" #3!=5
fi
if test $a -gt $b;then
echo "$a>$b"
else
echo "$a$b"
fi
```
2. 字符串测试
| = | 等于,为true |
| != | 不等,为true |
| -z 字符串 | 字符串的长度为0,为true |
| -n 字符串 | 字符串的长度不为0,为true |
```
#shell
#!/bin/sh
a="hello"
b="world"
if test $a = $b;then
echo "equal"
else
echo "not equal" not equal
fi
if test -z $a;then
echo "字符串长度为0"
else
echo "字符串长度不为0" #字符串长度不为0
fi
```
## 3. 文件测试
| -e 文件名 | 如果文件存在,则为真 |
| -r 文件名 | 如果文件存在且可读,则为真 |
| -w 文件名 | 如果文件存在且可写,则为真 |
| -x 文件名 | 如果文件存在且可执行,则为真 |
| -s 文件名 | 如果文件存在且至少有1个字符,则为真 |
| -d 文件名 | 如果文件存在且是目录则为真 |
| -f 文件名 | 如果文件存在且为普通文件,则为真 |
| -c 文件名 | 如果文件存在且为字符型特殊文件,则为真 |
| -b 文件名 | 如果文件存在且为特殊文件,则为真 |
```
#shell
#!/bin/sh
if test -e land;then
echo "文件已存在"
else
touch land
echo "文件已创建" #文件已创建
fi
if test -r land;then
echo "文件存在且可读" #文件存在且可读
else
echo "文件不存在或文件不可读"
fi
```
4. 使用逻辑运算符 -a -o !
#shell
#!/bin/sh
if test -e land -o -e wind;then
echo "有一个存在" #有一个存在
else
echo "2个都不存在"
fi
shell 9test命令的更多相关文章
- linux 基础 shell脚本命令
#########shell脚本命令#### 1.diff diff file file1 ####比较两个文件的不同 -c ####显示周围的行 -u ####按照一格式统一输出生成补丁 -r ## ...
- paip.执行shell cmd 命令uapi java php python总结
paip.执行shell cmd 命令uapi java php python总结 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:h ...
- (转)Hbase shell 常用命令(1)
Hbase shell 常用命令(1) link:http://blog.csdn.net/scutshuxue/article/details/6988348 下面我们看看HBase Shell的一 ...
- Shell printf 命令
Shell printf 命令 printf 命令模仿 C 程序库(library)里的 printf() 程序. 标准所定义,因此使用printf的脚本比使用echo移植性好. printf 使用引 ...
- Shell echo命令
Shell echo命令 echo "It is a test" 这里的双引号完全可以省略 .显示变量 read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shel ...
- 进入BIOS SHELL DUMP 命令
LINUX系统 进入SHELL 输入命令 fs1: or fs0: 就进入了U盘目录 然后输入 ACPIRW.efi -d -s dsdt.bat 就会产生结果到U盘 ——————————————— ...
- Linux Shell : Test命令参数解析
格式: test conditions test -n string : string 不为空 test -z string : string 为空 test int1 -eq int2 : int ...
- shell解析命令行的过程以及eval命令
本文说明的是一条linux命令在执行时大致要经过哪些过程?以及这些过程的大致顺序. 1.1 shell解析命令行 shell读取和执行命令时的大致操作过程如下图: 以执行以下命令为例: echo -e ...
- Shell和命令基础
什么是Shell Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解析器),Shell接收用户输入的命令并把它送入到内核去执行,结构如下图 Shell的功能 Shell最重要的 ...
随机推荐
- iOS调用第三方地图App进行导航方法
前言 App内根据手机上装载的地图App将其显示在弹出的选择框,选择对应地图跳转进入地图导航.需要用到- (BOOL)canOpenURL:(NSURL *)url NS_AVAILABLE_IOS( ...
- 无监督︱异常、离群点检测 一分类——OneClassSVM
OneClassSVM两个功能:异常值检测.解决极度不平衡数据 因为之前一直在做非平衡样本分类的问题,其中如果有一类比例严重失调,就可以直接用这个方式来做:OneClassSVM:OneClassSV ...
- ORACLE常用系统查询
目录(?)[-] 查询系统所有对象 查看系统所有表 查看所有用户的表 查看当前用户表 查看用户表索引 查看主键 查看唯一性约束 查看外键 查看表的列属性 查看所有表空间 查看oracle最大连接数 修 ...
- a demo for how to use QThread
/******************************************************************* * a demo for how to use QThread ...
- Linux基础和网络管理上机试题 - imsoft.cnblogs
一.(使用at命令实现任务的的自动化,要求用一条条的指令完成) 找出系统中任何以txt为后缀名的文档,并且进行打印.打印结束后给用户foxy发出邮件通知取件.指定时间为十二月二十五日凌晨两点 ...
- 【HAOI2013】花卉节
HA果然是弱省中的弱省…… 原题: ZZ市准备在绿博园举办一次花卉节.Dr.Kong接受到一个任务,要买一批花卉进行布置园林.能投入买花卉的资金只有B元 (1 <= B <= 10^18) ...
- Spring目前用到的知识点
2017/7/28 目前的工作,spring用到到的地方 在当前类有下列的代码 private BookDao bookDao bookDao.调用方法 点开这个方法,声明指向的是BookDao这个接 ...
- google play apk 下载
https://apps.evozi.com/apk-downloader/?id=com.sgiggle.production
- 基于windows IIS的C语言CGI WEB服务器环境搭建
网页编程对我来说特别亲切,因为我就是从html.ASP.PHP一步步接触编程的.自己的编程爱好也是从那里一点一点被满足.不过离开大学之后很久没有碰过WEB了,最近看到嵌入式中的涉及到的web服务器,了 ...
- 用vbs打开文件
set ws=createobject("wscript.shell")ws.run"打开文件所使用的程序+空格+程序路径",x,ture Run方法有三个参数 ...