一、 文件测试与数值测试

1、文件测试

[ 操作符 文件或目录 ]

1、常用的测试操作符

-d∶ 测试是否为目录(Directory)
-e∶ 测试目录或文件是否存在(Exist)
-f∶ 测试是否为文件(File)
-r∶ 测试当前用户是否有权限读取(Read)
-w∶ 测试当前用户是否有权限写入(Write)
-x∶测试当前用户是否有权限执行(eXcute)
-L∶测试是否为软链接文件

例:测试 test.sh 是否为文件和目录,test.sh 是一个脚本文件,不是目录。

2、test命令

 格式1:    test 条件表达式格式2:    [ 条件表达式 ]常用的测试操作符-eq∶ 等于(Equal)-ne∶ 不等于(Not Equal)-gt∶ 大于(Greater Than)-lt∶ 小于(Lesser Than)-le∶ 小于或等于(Lesser or Equal)·-ge∶ 大于或等于(Greater or Equal)

例:判断 6 与 3 的大小关系 (表达式与判断符之间要有空格,否则会报错)

3、整数比较

【 整数1 操作符 整数2 】
[root@localhost ~]# who | wc -l
1
[root@localhost ~]# [ $(who | wc -l) -lt 4 ] && echo "<4"
<4[root@localhost ~]# FreeCC=$(free -m | grep "Mem:" | awk '{print $6}')
[root@localhost ~]# [ $FreeCC -lt 2024 ] && echo ${FreeCC}MB
1036MB

4、字符串比较

1. 字符串测试与逻辑测试格式1:[ 字符串1 = 字符串2 ][ 字符串1 != 字符串2 ]
格式2:[ -z 字符串 ]
[root@localhost ~]# echo $LANG
zh_CN.UTF-8
[root@localhost ~]# [ $LANG != "en.US" ] && echo "Not en.US"
Not en.US

5、常用的测试操作符

-a或&&        逻辑与,“而且”的意思
-o或||       逻辑或,“或者”的意思
!            逻辑否

判断/etc 是否为目录和是否有可读权限

[root@localhost ~]# [ -d /etc ] && [ -r /etc ] && echo "you can open it"
you can open it

linux - 条件测试符相关推荐

  1. linux条件测试的三种,shell编程之条件测试 | 旺旺知识库

    一.条件测试语法: test 测试内容 [ 测试内容 ]      ##注意中括号与测试内容间有空格 [[ 测试内容 ]] (( 测试内容 ))   ##只能用于测试数值大小,后面详解 前三种测试语法 ...

  2. linux测试语句,Linux 条件测试语句

    Linux的控制语句需要用到各种条件,而条件又分为不同的类型. 测试表达式: (1)整数测试 A -gt B:大于 A -ge B:大于等于 A -eq B:等于 A -le  B:小于等于 A -n ...

  3. 条件测试 linux,linux系统中条件测试语句

    linux系统中条件测试语句 linux系统中条件测试语句分为4类: 1.文件测试语句 2.逻辑测试语句 3.整数值比较语句 4.字符串比较语句 一.文件测试语句 -e :是否存在 -f :是否为文件 ...

  4. 【Linux学习009】脚本编程之变量、条件测试和条件判断

    一.Bash环境变量 bash中变量有四种种类型:环境变量.本地变量(局部变量).位置变量.特殊变量. 1.环境变量 环境变量作用范围最广,所有子bash进程都能够访问环境变量中的值,定义环境变量的方 ...

  5. linux中使用egrep取值ip地址,Linux:Day6(上) egrep、条件测试

    egrep及扩展的正则表达式: egrep = grep -E 扩展正则表达式的元字符: 或者:a | b 练习: 1.显示当前系统root.centos或user1用户的默认shell和UID: 2 ...

  6. shell脚本中的特殊变量与if条件测试

    1.特殊变量 实际工作中我们不可避免的遇到一些xxxx.sh脚本文件,实际阅读shell脚本代码时经常会遇到很多特殊变量(例如:$0.$n.$#.$@.$*.$?.$$等),我们常常会被这些特殊符号折 ...

  7. 基于Android设备的Kali Linux渗透测试教程第1章渗透测试

    基于Android设备的Kali Linux渗透测试教程第1章渗透测试 渗透测试(Penetration Testing)是一种通过模拟攻击者所采用的技术与方法,攻击目标系统的安全控制措施,并取得访问 ...

  8. 抽象思想解读Linux进程描述符

    来源 | 嵌入式客栈 责编 | Carol 头图 | CSDN 下载自视觉中国 内核是怎么工作的? 首先要理解进程管理,进程调度,本文开始阅读进程管理部分,首先从进程的抽象描述开始.抽象是软件工程的灵 ...

  9. 玩转Linux文件描述符和重定向

    本文介绍linux中文件描述符与重定向的相关知识,文件描述符是与文件输入.输出相关联的整数,它们用来跟踪已打开的文件.有需要的朋友参考下. 原文出处:http://www.jbxue.com/arti ...

最新文章

  1. JavaScript 对象中this的指向问题
  2. 我的centos上安装 jdk+apache+tomcat+tomcatconnector+myql 安装道路
  3. 搜索专题: HDU1428漫步校园
  4. js中WebSocket
  5. signals系列之一——基本用法
  6. font awesome java_java awt实现 fontawesome转png
  7. 0.typescript-相关文档
  8. rabbitmq 客户端golang实战
  9. MISCONF Redis配置为保存RDB快照
  10. 万能Ghost全攻略(最详细完整的教程)
  11. 聚类分析原理(及Python实现K-means代码详解)
  12. 3D缺陷检测---小论文
  13. Xshell官网免费版下载实用
  14. GroupBox与Panel控件
  15. 计算机专业文献阅读报告,文献阅读报告范本.doc
  16. 【开源】STM32步进电机控制
  17. FHD、4K、8K为何物
  18. SOEM 源码解析 ecx_FRMW
  19. java实训———百词斩
  20. java怎么获取索引值,Java 实例 - 获取向量元素的索引值

热门文章

  1. 欧美剧集观看最佳索引 【2006-9-24更新】
  2. 基于单片机十字路口交通灯系统(含原理图)-资料
  3. Struts 2 常用标签总结
  4. 计算机 本科生发论文,北京大学图灵班本科生获STOC最佳论文奖
  5. HTTP Status Codes/HTTP状态码
  6. rm 输入/输出错误
  7. 解决Xftp6错误 要继续使用此程序您必须应用最新的更新或使用新版本
  8. layui导出excel表格
  9. (精华)2020年7月16日 vue Fuse.js模糊搜索引擎
  10. 在PERC管理的RAID上运行一致性检查