test判断式

看下面:

 test -e /opt/a.txt && echo "exist" || echo "not exist"

判断 /opt/a.txt 存不存在,存在输出 exist ,否则输出 not exist

test还有很多用法:

  1. 关于某个文件名的”文件类型“判断,如 test -e fileName 表示判断存在与否
    1. -e 该文件名是否存在
    2. -f  该文件名是否存在且为文件
    3. -d 该文件名是否存在且为目录
  2. 关于文件的权限,如 test -f fileName 表示判断文件是否可读
    1. -r
    2. -w
    3. -x
  3. 关于两个文件之间的比较 ,如 test file1 -nt file2
    1. -nt  (newer than)判断 file1 是否比 file2 新
    2. -ot  (older than)判断 file1 是否比 file2 旧
  4. 关于两个整数之间的判断,如 test n1 -eq n2
    1. -eq 判断相等
    2. -ne 判断不相等
    3. -gt  n1 大于 n2
    4. -lt   n1 小于 n2
    5. -ge  大于等于
    6. -le   小于等于
  5. 关于字符串比较
    1. Test -z string  若string是空字符串,返回true
    2. Test -n string 若string是空字符串,返回false
    3. test str1=str2
    4. test str1!=str2
  6. 多重条件判定
    1. -a    两个条件同时成立, 如 test -e file1 -a -e file2 ,表示判断 file1 和 file2 是否都存在
    2. -o    任何一个条件成立就成立,如 test -e file1 -o -e file2,file1 或 file2 任何一个存在都返回 true
    3. !      否定,如 test ! -e file1,  表示 file1 不存在返回 true

[  ... ] 判断式

经常用于if 语句的判断

注意: [ ] 中每个组件都需要用空格符来分隔; 变量最好都用双引号括起来; 常量也用双引号括起来

shell script-判断式的更多相关文章

  1. 第十三章、学习 Shell Scripts 善用判断式

    善用判断式 利用 test 命令的测试功能 我要检查 /dmtsai 是否存在时,使用: [root@www ~]# test -e /dmtsai [root@www ~]# test -e /dm ...

  2. Linux学习十八之、善用判断式

    原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0340bashshell-scripts_3.php 善用判断式 在第十一章中,我们提到过 $? 这个变量所 ...

  3. Linux学习-善用判断式

    利用 test 指令的测试功能 要检测系统上面某些文件或者是相关的属性时,利用 test 这个指令来工作真是好用得不 得了, 举例来说,我要检查 /dmtsai 是否存在时,使用: [dmtsai@s ...

  4. 【重点】Shell入门教程:流程控制(3)条件判断式的真假值

    之前曾提到,在Bash中什么是真什么是假,是以命令的结束状态是否为0来做判断.传回0,即为真:传回非0,即为假. 在Bash中,这种可以影响程序流程的式子,称为条件判断式.判断式的操作数分成“单元”及 ...

  5. 第十三章、学习 Shell Scripts 条件判断式

    利用 if .... then 单层.简单条件判断式 if [ 条件判断式 ]; then 当条件判断式成立时,可以进行的命令工作内容: fi <==将 if 反过来写,就成为 fi !结束 i ...

  6. shell编程 条件判断式----利用 case ..... esac 判断

    条件判断式----利用 case ..... esac 判断 case  $变量名称 in   <==关键词为 case ,还有变量前有钱字号 "第一个变量内容")   &l ...

  7. shell编程 条件判断式----利用 if .... then ----多重

    条件判断式----利用 if .... then ----多重 在同一个数据的判断中,如果该数据需要进行多种不同的判断时,应该怎么作?举例来说,上面的 sh06.sh 脚本中,我们只要进行一次 $yn ...

  8. shell script 二 判断符号【】 shift 偏移量 if then fi

    判断符号[]类似于test.但是[]有通配符及正则表达式,为了区分,利用[]来做判断时,前后都需要加空格来区分.又一个坑 [ -z "$HOME" ];echo $? 例: 1 r ...

  9. 【shell】条件判断式

    条件判断式的表示格式: 文件判断式: [root@andon ~]# [ -e /root/1 ] && echo yes || echo no #注意[]里面的空格,第一个命令为真打 ...

  10. shell及脚本4——shell script

    一.格式 1.1 开头 必须以 "# !/bin/bash"  开头,告诉系统这是一个bash shell脚本.注意#与!中间有空格. 二.语法 2.1 数值运算 可以用decla ...

随机推荐

  1. Filebeat 导入 Elasticsearch 的方法

    Filebeat 导入 Elastaticsearch 的方法 1. 什么是Filebeat?到底是干什么的? Filebeat说实话,就是一个日志监控分发器,类似tail -f这样去监控某个日志,或 ...

  2. php获取图片的拍摄及其他数据信息

    服务器配置说明:1.在php.ini文件中找到;extension=php_exif.dll,去掉前面的分号2.在php.ini文件中找到;extension=php_mbstring.dll,去掉前 ...

  3. 文件复制的另一种选择,使用FileChannel复制文件

    通常来说,FileChannel比普通的缓冲输入输出流有更高的效率     import java.io.File; import java.io.FileInputStream; import ja ...

  4. JQuery 常用代码

    1.选择器 1.根据标签名: $('p')  选择文档中的所有段落    2. 根据ID: $("#some-id")    3.类: $('.some-class') $('.t ...

  5. C#--父子页面传值、刷新(showModalDialog)

    父页面: var obj = new Object(); obj.name="name"; var rtnValue=window.showModalDialog("ch ...

  6. name lookup of 'res' changed for new ISO 'res' scoping

    #include<iostream> using namespace std; int pow ( int val, int exp ); int main() { int val = 2 ...

  7. COM组件的集合与包容

    集合与包容,实质就是组件之间的互相调用.即一个组件使用另一个组件的功能,达到代码复用的作用.只是这种复用是构建在二进制数据上的(因为被复用的组件常常以dll的格式存在),而不是像c++代码复用是以源文 ...

  8. UVA-11020(BST)

    题意: 给n个点,一个点(x,y)有优势时满足不存在点(fx,fy)使得fx<x,fy<=y或fx<=x,fy<y;问当前有多少个有优势点; 思路: 学习BST的入门题,代码是 ...

  9. linux命令学习笔记(50):crontab命令

    前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个 ...

  10. 【leetcode刷题笔记】Best Time to Buy and Sell Stock III

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...