shell 脚本中测试操作符号及 && 与 ||

测试操作符

常用测试操作符 英文名 说明
-f 文件 file 文件存在且为普通文件为真,即测试表达式成立
-d 文件 directory 文件存在且为目录文件为真,即测试表达式成立
-s 文件 size 文件存在且文件大小不为 0 为真,即测试表达式成立
-e 文件 exist 文件存在为真,即测试表达式成立
-r 文件 read 文件存在且可读为真,即测试表达式成立
-w 文件 write 文件存在且可写为真,即测试表达式成立
-x 文件 executable 文件存在且可执行为真,即测试表达式成立
-L 文件 link 文件存在且为链接文件为真,即测试表达式成立
fi -nt f2 newer than 文件 f1 比文件 f2 新为真,即测试表达式成立。根据文件的修改时间计算
f1 -ot f2 older than 文件 f1 比文件 f2 旧为真,即测试表达式成立。根据文件的修改时间计算
&& 与 运算符

&& 运算符
格式:command1 && command2
&& 左边的命令(命令1)返回真(即返回0,成功被执行)后,&& 右边的命令(命令2)才能够被执行;换句话说,“如果这个命令执行成功&&那么执行这个命令”
|| 运算符
格式:command1 || command2
|| 则与&&相反。如果||左边的命令(command1)未执行成功,那么就执行 || 右边的命令(command2);或者换句话说,“如果这个命令执行失败了 || 那么就执行这个命令”

原文地址:http://blog.51cto.com/12384628/2151985

时间: 2024-10-10 10:43:24

shell 脚本中测试操作符号及 && 与 ||的相关文章

shell脚本中的特殊符号

1.{} 大括号:用法一:通配符扩展eg: ls my_{finger,toe}s这条命令相当于如下命令的组合:ls my_fingers my_toeseg: mkdir {userA,userB,userC}-{home,bin,data}我们将得到 userA-home, userA-bin, userA-data, userB-home, userB-bin,userB-data,userC-home, userC-bin, userC-data,这几个目录用法二:可用于语句块的构造,语

shell脚本中一些特殊符号

在shell中常用的特殊符号罗列如下: # ;   ;; . , / \\ 'string'| !   $   ${}   $? $$   $* \"string\"* **   ? : ^ $#   [email protected] `command`{}   [] [[]] ()   (()) ||   && {xx,yy,zz,...}~   ~+   ~-   &   \\<...\\>   + - %=   ==   != # 井号 (c

让你提前认识软件开发(22):shell脚本中的文件操作

第1部分 重新认识C语言 shell脚本中的文件操作 [文章摘要] 编写shell脚本时,经常会涉及到对文件的操作,比如从文件中读取一行数据.向文件追加一行数据等.完成文件读写操作的方法有很多,了解各种命令下文件操作的执行情况,有助于开发人员在不同使用场景下选择合适的命令. 本文以实际的shell脚本为例,介绍了对文件进行操作的不同方法,为相关开发工作提供了参考. [关键词] shell  文件操作  读写  效率 一.概述 在某些软件项目的需求文档中,要求程序一次性读或写的数据规模较大,可达1

Shell脚本中替换字符串等操作

在做shell批处理程序时候,常常会涉及到字符串相关操作. 有非常多命令语句.如:awk,sed都能够做字符串各种操作. 事实上shell内置一系列操作符号.能够达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快. 一.推断读取字符串值 表达式 含义 ${var} 变量var的值, 与$var同样     ${var-DEFAULT} 假设var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-DEFAULT} 假设var没有被声明, 或者其值为空

Shell脚本中执行sql语句操作

这篇文章主要介绍了Shell脚本中执行sql语句操作mysql的5种方法,本文讲解了将SQL语句直接嵌入到shell脚本文件中.命令行调用单独的SQL文件.使用管道符调用SQL文件等方法,需要的朋友可以参考下 对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到sh

shell脚本中常见的一些特殊符号和作用详解

这篇文章主要介绍了shell脚本中常见的一些特殊符号和它的作用详解,总结的很简洁,容易看懂,需要的朋友可以参考下 在编写Shell脚本时,我们需要会用到各种各样的特殊符号,通过这些特殊符号可以使我们编写的代码更加简洁和高效,这里给大家汇总下: 1.{} 大括号: 用法一:通配符扩展eg: ls my_{finger,toe}s这条命令相当于如下命令的组合:ls my_fingers my_toeseg: mkdir {userA,userB,userC}-{home,bin,data}我们将得到

Shell脚本中怎么实现用户切换实现操作

当我们在服务器上面疯狂的进行操作的时候,我们用shell脚本来帮我们来完成一些基本的任务,但是一些命令或者一些操作需要我们不断切换用户来实现的话,在shell脚本就不那么好实现了,那么我们在shell脚本中应该怎么去写这个用户切换的代码呢? su -chen -c "command" 适用于切换目录只执行一条命令 su -chen -s path 适用于切换目录执行多条命令 执行多条命令的时候,要创建一般用户的commandshell,提权到可执行脚本,然后在主shell中执行多条命令

shell脚本中实现自动判断用户有无密码

在最近完成老师布置的作业的时候遇到了如何让shell脚本中的命令自动判断一个用户是否已设置密码的问题,虽然看似不是很难的一个问题,但是在这一功能实现的过程中却包含了许多细小的而重要的知识.刚开始小编对此很是头疼,虽然我们查看一个用户是否有密码并不是很难,直接cat /etc/shadow这个文件看看密码位是否有加密的字符就行了,但是让命令自己去判断和匹配就不是很顺利了,小编上网查看后,并没有得到很好的答案,大多数都是人工查看的答案,并不适用于shell脚本中自动的判断,所以在认真对比/etc/p

20.5 shell脚本中的逻辑判断 20.6 文件目录属性判断 20.7 if特殊用法 20.8/20.9 case判断

- 20.5 shell脚本中的逻辑判断 - 20.6 文件目录属性判断 - 20.7 if特殊用法 - 20.8/20.9 case判断 # 20.5 Shell脚本中的逻辑判断 - 很多脚本可以直接用命令执行,比如之前的那个 ``` [[email protected] ~]# for i in `seq 1 5`;do echo $i;done 1 2 3 4 5 [[email protected] ~]# for i in `seq 1 5` > do > echo $i >