shell中的条件判断
read命令 命令的语法:
read [参数] 变量名 常用的参数如下:
-t timeout 设定超时时间。
-p prompt 设定提示信息,该提示信息将会显在光标前。
条件测试:
条件测试可以判断脚本程序运行的状态。它常用于条件分支,以便在不同的运行状态下执行不同的命令。
[ param1 判断符号 param2 ]
[ 判断符号 param ]
条件测试的3种表达形式
[ [ command ] ]
[ command ]
test comand
文件状态测试:
-b filename 判断文件filename是否为块设备,若文件不存在返回假。
-c filename 判断文件filename是否为字符设备,若文件不存在返回假。
-d pathname 判断路径pathname是否为目录,若路径不存在返回假。
-e pathname 判断路径pathname是否存在。
-f filename 判断文件filename是否为真会文件,若文件不存在返回假。
-g pathname 判断路径pathname是否设置了SGID位,若路径不存在返回假。
-h filename 判断文件filename是否为链接文件,若文件不存在返回假。
-k pathname 判断路径pathname是否设置了“粘滞”位,若路径不存在返回假。
-p filename 判断文件filename是否为管道文件,若文件不存在返回假。
-r pathname 判断路径pathname是否为可读,若路径不存在返回假。
-s filename 判断文件filename的尺寸是否大于0,若文件不存在返回假。
-S filename 判断文件filename是否是Socket,文件不存在返回假。
-u pathname 判断路径pathname是否设置了SUID位,若路径不存在返回假。
-w pathname 判断路径pathname是否为可写,若路径不存在返回假。
-x pathname 判断路径pathname是否为可执行,若路径不存在返回假。
-O pathname 判断路径pathname是否为当前用户所拥有,若路径不存在返回假。
-G pathname 判断路径pathname的用户组是否为当前用户所在组,若路径不存在返回假。
file1 -nt file2 判断文件file1是否比文件file2新。
file1 -ot file2 判断文件file1是否比文件file2旧。
逻辑操作
param1 –a param2 逻辑与。
param1 –o param2 逻辑或。
! param 逻辑非。
&& 逻辑与
|| 逻辑或
字符测试:
-z string 判断字符串string是否为空串,即长度为0。
-n string 判断字符串string 是否为非空串。
string1 = string2 判断字符串string1和string2是否相等。
string1 != string2 判断字符串string1和string2是否不等。
string1 < string2 按字符编码表排序,字符串string1是否在string2之前。
string1 > string2 按字符编码表排序,字符串string1是否在string2之后。
数值测试:
val1 –eq val2 判断val1和val2的数值是否相等。
val1 –ne val2 判断val1和val2的数值是否不等。
val1 –lt val2 判断val1是否小于val2。
val1 –le val2 判断val1是否小于等于val2。
val1 –gt val2 判断val1是否大于val2。
val1 –ge val2 判断val1是否大于等于val2。
shell中的条件判断的更多相关文章
- shell中的条件判断以及与python中的对比
shell中比如比较字符串.判断文件是否存在及是否可读等,通常用"[]"来表示条件测试. 注意:这里的空格很重要.要确保方括号的空格. if ....; then ...
- linux shell中的条件判断语句
http://bbs.chinaunix.net/thread-396805-1-1.html shell 判断语句 流程控制 "if" 表达式 如果条件为真则执行then后面的部 ...
- shell中的条件判断if和测试
(一)条件判断 if 中-z 到 -d 的意思 [ -a file ] 若file存在,则为真. [ -b file ] 若file存在且是一个块特殊文件,则为真. [ -c file ] 若file ...
- shell中的条件判断、参数以及变量替换
文章转自: http://www.cnblogs.com/maxupeng/archive/2011/07/02/2096551.html 一.test命令 test命令是shell内部命令,它计算作 ...
- Shell编程中的条件判断(条件测试)
Shell中的条件判断(测试)类型: 1) 整数测试 2) 字符测试 3) 文件测试 条件测试的表达式: (注: expression 与 [] 之间空格不能省略) [ expressi ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- Shell脚本IF条件判断和判断条件总结
转自:http://m.jb51.net/article/56553.htm 这篇文章主要介绍了Shell脚本IF条件判断和判断条件总结,本文先是给出了IF条件判断的语法,然后给出了常用的判断条件总结 ...
- sql 语句中使用条件判断case then else end
sql 语句中使用条件判断case then else end范例: SELECT les.[nLessonNo] FROM BS_Lesson AS les WHERE les.[sClassCod ...
- Shell学习(六)——条件判断总结
Shell学习(六)--条件判断总结 [1]https://www.cnblogs.com/zhw-626/p/8528001.html [2]https://www.cnblogs.com/yizh ...
随机推荐
- A Tour of Go Exercise: Loops and Functions
As a simple way to play with functions and loops, implement the square root function using Newton's ...
- zoj 3460 Missile【经典建图&&二分】
Missile Time Limit: 2 Seconds Memory Limit: 65536 KB You control N missile launching towers. Ev ...
- OC中 self.view.frame.size.height = 100; 不能通过编译的原因
在OC中,当需要修改一个view的尺寸时,通常是通过先将 self.view.fram赋值给一个临时变量,然后修改临时变量,最后将临时变量赋值给 self.view.frame.代码如下: // 1. ...
- struts2设置<s:select>默认选中项的方法
struts2的select标签中,常用的有以下几个属性:(1)struts2中的select 标签中,必须设置的属性只有一个,即是list.(2)select标签的list中必须有值,不然会报错.如 ...
- children真的没有兼容性问题吗?
获取某一节点的所有子元素节点,你会用什么方法? 如果你用childNodes,那会有兼容性问题,对于标准浏览器,他包含的是元素节点和文本节点,我们还需要循环来判断节点的类型,是文本节点还是元素节点,不 ...
- XML模式:Dublin Core
Dublin Core 标准是一种信息分类方法,常用于图书馆.Dublin Core 标准有一个 XML Schema 定义了如何使用 XML 描述这类信息.Dublin Core 可以有效地对各种信 ...
- Java实现文件的RSA和DES加密算法
根据密钥类型不同将现代密码技术分为两类:对称加密算法(秘密钥匙加密)和非对称加密算法(公开密钥加密) 对称钥匙加密系统是加密和解密均采用同一把秘密钥匙,而且通信双方都必须获得这把钥匙,并保持钥匙的秘密 ...
- 标准I/O库之二进制I/O
如果进行二进制I/O操作,那么我们更愿意一次读或写整个结构.因此,提供了下列两个函数以执行二进制I/O操作. #include <stdio.h> size_t fread( void * ...
- 解决Visual Studio 2010新建工程时出现『1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt』错误
VS2010在经历一些更新后,建立Win32 Console Project时会出"error LNK1123" 错误. 解决方案为: 第一步:将:项目|项目属性|配置属性|清 ...
- Nginx【第一篇】安装
一.简介 Nginx("engine x")是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能的 Web 和 反向代理 服务器,也是一个 IMAP/POP3/SMT ...