test 命令的格式非常简单

test condition

condition 是test命令要测试的一系列参数和值。当用在if-then 语句中时,test 命令看起来是这样的

if test condition

then

commands

f i

如果不写test  命令的condition 部分,它会以非零的退出状态码退出,并执行else 语句块

bash shell 提供了另一种条件测试方法,无需在if -then 语句中声明test

if [condition]

then

commands

f i

方括号定义了测试条件,注意第一个方括号之后和第二个方括号之前必须加上一个空格,否则就会报错

test 命令可以判断三类条件:

  • 数值比较
  • 字符串比较
  • 文件比较

数值比较

比较 描述
n1 -eq n2 检查n1 与n2  是否相等
n1 -ge n2 检查n1是否大于或等于n2
n1 -gt n2 检查n1是否大于 n2
n1 -le n2 检查n1 是否小于等于n2
n1 -lt n2 检查n1  是否小于n2
n1 -ne n2 检查n1 是否不等于n2

字符串比较

比较 描述
str1=str2 检查str1是否与str2 相等
str1!=str2 检查str1是否和str2 不同
str1<str2 检查str1是否比str2小
str1>str2 检查str1是否比str2大
-n str1 检查str1 的长度是否非0
-z  str1 检查str1 的长度是否为0

-n 和 -z 可以检查一个变量是否含有数据

$var1="zhangjunjie"

$var2="junjie"

if [-n $var1]

then

commands

判断var1 变量的长度是否非0.而它的长度正好非0.所以then 部分就被执行了

if [-z $var2]

then

commadns

-z  判断var2 的长度是否为0.而它的长度正好为0,所以then部分就被执行了

Linux shell编程 -test的更多相关文章

  1. linux —— shell 编程(文本处理)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 基本文本处理 流编辑器sed aw ...

  2. linux —— shell 编程(编程语法)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 再识变量 函数 条件语句 循环语句 ...

  3. linux shell编程总结

    linux shell编程总结 本周学习了unix/linux shell编程,参考的是<LINUX与UNIX Shell 编程指南>,David Tansley著:徐焱,张春萌等译,由机 ...

  4. Linux Shell编程参考大全

    本文记录Linux Shell编程中常用基本知识,方便快速入门以及查询使用. 本文主要分为以下几个部分: 一.Shell中的变量 任何编程语言中,有关变量的定义,作用范围,赋值等都是最最基础的知识. ...

  5. Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||

    https://blog.csdn.net/hack8/article/details/39672145 Linux Shell编程中的几个特殊符号命令 & .&& . || ...

  6. linux shell 编程参考

    #!/bin/bash my_fun() { echo "$#" } echo 'the number of parameter in "$@" is '$(m ...

  7. Linux Shell编程与编辑器使用详解

    <Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...

  8. linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行

    linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行 crontab每分钟执行一次,但5秒以上才有更新数据,有时候一分钟可能跑不完上一个进程,需要先等10秒再判 ...

  9. 一文学完Linux Shell编程,比书都好懂

    一. Shell 编程 1. 简介 Shell 是一个用 C 语言编写的程序,通过 Shell 用户可以访问操作系统内核服务. Shell 既是一种命令语言,又是一种程序设计语言. Shell scr ...

  10. 前端学习 linux —— shell 编程

    前端学习 linux - shell 编程 shell 原意是"外壳",与 kernel(内核)相对应,比喻内核外的一层,是用户和内核沟通的桥梁.shell 有很多种,国内通常使用 ...

随机推荐

  1. linux删除软链接文件【原创】

    删除软链接文件时,不要加“/”,去注意 正确方法: rm -rf ./softlinkfile 错误方法: rm -rf ./softlinkfile/ 上面错误的操作,这样会把软链接的源文件一同删除 ...

  2. Gitlab_ansible_jenkins三剑客④jenkins安装图解及freestyle的简单使用

    java环境准备 # 安装jdk1.8 [root@node02 ~]# rpm -ivh jdk-8u181-linux-x64.rpm vim /etc/profile export JAVA_H ...

  3. LeetCode.数字转罗马数字

    罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并 ...

  4. JavaScript 当月第一天和最后一天

    1. 概述 1.1 说明 在项目过程中,有时候需要默认展示一个月的查询条件,即当月的第一天和最后一天. 2. 代码 2.1 代码示例 直接调用getFirstAndLastDay()即可得到当月的第一 ...

  5. 论文阅读笔记四十七:Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression(CVPR2019)

    论文原址:https://arxiv.org/pdf/1902.09630.pdf github:https://github.com/generalized-iou 摘要 在目标检测的评测体系中,I ...

  6. python-初识python

    一.计算机的初步认识 硬件:内存,主板,CPU,硬盘,显卡,显示器等 内存: 优点:存取速度快 缺点:断电后数据会全部丢失 硬盘: 优点:断电后数据也会永久保存 缺点:存取速度远远慢于内存 1.操作系 ...

  7. Centos安装Consul微服务

    一.简介 Consul([ˈkɒnsl],康搜)是注册中心,服务提供者.服务消费者等都要注册到Consul中,这样就可以实现服务提供者.服务消费者的隔离.除了Consul之外,还有Eureka.Zoo ...

  8. JavaScript模块化CommonJS/AMD/CMD/UMD/ES6Module的区别

    目录 JS-模块化进程 原始的开发方式 CommonJS && node.js AMD && Require.js CMD && Sea.js UMD ...

  9. 用servlet进行用户名和密码校验

    用servlet进行用户名和密码校验 先来看看效果-- 这里为了方便查看,密码框并没有使用password输入框,而是使用了text框 总体来说思路还是比较简单 1.先来个form,配置好action ...

  10. Python 实现整数线性规划:分枝定界法(Branch and Bound)

    今天做作业,要实现整数线性规划的分枝定界法算法.找了一些网上的博客,发现都很屎,感觉自己写的这个比较清楚.规范,所以在此记录.如有错误,请指正. from scipy.optimize import ...