【整数之间的比较】

示例脚本:

#!/bin/bash

if [ $1 -gt $2 ]

then echo "参数$1大于参数$2"

else echo "参数$1小于参数$2"

fi

数字判断一些命令:

#-gt是大于

#-lt是小于

#-eq是等于

#-ne是不等于

#-ge是大于等于

#le是小于等于

【小数及整数之前的比较】

示例脚本:

a=1.6

b=6.1

c=`echo "$a > $b" | bc`

说明:

可以使用的比较符号:

>

<

==

>=

<=

如果双引号内执行结果为真,c的值就是1,否则c的值就是0.

注意:这里一定一定要注意的是,这个比较结果就是0或1,而不是代表true或false,因而不能用于if后的条件判断!切记切记!

另,字符串的比较:

字符串中有可能有空格等,所以最好是使用双引号将字符串都括起来,例如:

示例脚本:

a="hello  world"

b="hello world"

if [ "$a" = "$b" ]

then

        echo "a is same as b"

else

        echo "a is different from  b"

fi

该脚本执行结果为:a is different from  b

可以看出,字符串比较时,空格也会参与比较。

shell中数字大小的比较的更多相关文章

  1. shell中数字、字符串、文件比较测试

    1.逻辑运算符:与&&     或||    非!  &&:双目操作符:与运算中:如果第一个数为假,结果一定为假   ==> 短路操作符 ||:双目操作符:或运算 ...

  2. DIR 按文件名中数字大小进行排序

    @echo off set arg=%1 if "%arg%" == "" set arg=* if "%arg%" == "-h ...

  3. shell脚本学习(2)比较两个数字大小

    注意:shell中对比字符串只能使用==.<.>.!=.-z.-n.对比字符串时,末尾一定要加上x(或者a.b等)一个字符,因为if [ $1x == "ab"x ]时 ...

  4. shell中的数字

    shell中的数字 author :headsen chen date :2017-10-18  15:01:42 个人原创,转载请注明作者,出处,否则依法追究法律责任 1,生成随机数(范围:0-32 ...

  5. Linux下科学计数法(e)转化为数字的方法 [shell中几种数字计算说明]

    科学计数法使用e标识数值,将科学计算学转化为数字的思路:按e右边的数字移动小数点位数.e右边的数字如果是负数,则向左移动小数点.示例如下: 1.2345678e2 = 123.45678 1.2345 ...

  6. shell中 -eq,-ne,-gt,-lt,-ge,-le数字比较符

    使用说明:     -eq //equals等于    -ne //no equals不等于    -gt //greater than 大于    -lt //less than小于    -ge ...

  7. 在shell 中字符串,文件,数字的比较

    hadoop fs -test -e /path/exist ] ;then echo 'exist' else echo 'Error! path is not exist' fi 在shell中如 ...

  8. shell中if条件字符串、数字比对,[[ ]]和[ ]区别

    目录 shell 括号 test 和 []符号 [[]] 符号 let和(())符号 "[]" , "[[]]" 和 "(())"对比 sh ...

  9. linux shell中的特殊符号

    该内容,均来自此网址(http://www.92csz.com/study/linux/12.htm).在下只是把那些命令的截图给去了. 你在学习linux的过程中,也许你已经接触过某个特殊符号,例如 ...

随机推荐

  1. tensorflow读取图片案例

    1.知识点 """ 1.图片读取流程与API: 1.构造图片文件队列 文件队列API: a)tf.train.string_input_producer(string_t ...

  2. 机器学习之K-Mean聚类算法

    知识点: # coding = utf-8 import numpy as np import pandas as pd from sklearn.cluster import KMeans &quo ...

  3. springBoot整合spring、springMVC、mybatis

    前文 1.为什么使用springBoot 众所周知,spring是Java在搭建后台时非常实用的框架,其整合了市场上几乎所有的主流框架于一体,使后端编程更加高效.快速: 而SpringBoot更是把s ...

  4. 六十七:flask上下文之Local线程隔离对象

    Local对象在flask中,类似于request对象,其实是绑定到了werkzeug.local.Local对象上,这样即使是同一个对象,在多线程中都是隔离的,类似的对象还有session以及g对象 ...

  5. 六十三:CSRF攻击与防御之系统准备之登录与转账功能

    登录功能 在forms里面添加验证 class LoginForm(Form): email = StringField(validators=[Email(message='邮箱格式错误')]) p ...

  6. Ubunut16.04 安装 Theano+GPU

    1. 更新NVIDIA显卡驱动   安装好系统之后首先在系统更新管理器中更新显卡驱动,如下图 点击Apply Changes 2. 安装numpy,scipy,theano pip安装即可 sudo ...

  7. asp.NET 下真正实现大文件上传

    一般10M以下的文件上传通过设置Web.Config,再用VS自带的FileUpload控件就可以了,但是如果要上传100M甚至1G的文件就不能这样上传了.我这里分享一下我自己开发的一套大文件上传控件 ...

  8. PHP define defined const

    define 定义常量,常量一旦被定义,在脚本执行期间就不能再改变或者取消定义 常量默认大小写敏感.通常常量标识符总是大写的 与变量的区别: 1.常量前面没有美元符号($) 2.常量只能通过defin ...

  9. HCL试验4

    PC端配置:配置ip地址 配置网关 交换机配置:①创建VLAN system-view vlan 10 vlan 20 ②配置PC端接口 interface vlan-interface 10 ip ...

  10. netcore程序部署 docker 异常 --生成图片二维码缺少libdl

    最近因业务需求需要在程序中实现二维码图片生成,于是就用到QRCoder开发库.最终在windows环境下部署运行没问题,但切换到docker(centos7.0)后发现是有问题的. 错误信息提示:Th ...