shell 文件 数字比较

shell 文件 数字比较

大家好,又见面了,我是全栈君。

echo ‘1.2*2’|bc




++++++++++++++++ 数字比较


方式1:


agm1=50


agm2=60




if [  3 -eq 3 -a  ${agm1} -ne ${agm2}  -a ${agm2} -gt ${agm1} -a ${agm1} -ge 50 -a ${agm1} -lt ${agm2} -a ${agm2} -le 60 -o 4 -gt 3  ]; then


  echo ‘yes’


else


  echo ‘no’


fi




方式2:


agm1=’ye’


agm2=’ye’




if [[ “$agm1” == “$agm2” &&  “$agm1” == ‘ye’ && 2 > 1 && 1 < 2  ]]; then


  echo ‘yes’


else


  echo ‘no’


fi




注意: 字符串比较必须加双引号




总结:


-f  文件是否存在


-d  目录是否存在


-s  文件存在且不为空


-e  存在的是目录或文件


-L  是否快捷链接




-r   文件是否可读


-w  文件是否可写


-x  文件是否可执行




-eq  是否相等


-ne  是否不等于


-ge  是否大于等于


-gt  是否大于


-le  是否小于等于 


-lt  是否小于




-a  且


-o  或




[ * ]   大括号一般字母可用


[[*]]   双大括号一般 && || > < >= <= == !=符合可用




上述相关可以在 help test 详细讲解




条件控制语句






获取内存大小: free -m |grep buffers\/|awk ‘{print $NF}’






判断是否数字:


#!/bin/bash


str=’123′


[ -n “`echo ${str}|sed ‘s#[0-9]##g’`” ] && {



  echo ‘no int’


  exit 1


}




或者

[ -n “`echo hello123|sed ‘s/[0-9]//g’`” ] && echo ‘no int’ || echo ‘is int’


本文转自cloves 51CTO博客,原文链接:http://blog.51cto.com/yeqing/1882627

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107988.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Nginx动静分离实现

    Nginx动静分离实现Nginx是一种轻量级,高性能,多进程的Web服务器,非常适合作为静态资源的服务器使用,而动态的访问操作可以使用稳定的Apache、Tomcat及IIS等来实现,这里就以Nginx作为代理服务器的同时,也使用其作为静态资源的服务器,而动态的访问服务器就以Apache为例说明。

    2022年6月12日
    43
  • 根治Windows 2003操作系统登录及关机麻烦

    根治Windows 2003操作系统登录及关机麻烦

    2021年8月4日
    64
  • IDE工具(29) idea生成iml文件

    IDE工具(29) idea生成iml文件如何让 idea 生成 iml 文件 在项目的 pom 文件位置处打开 cmd 执行命令 mvnidea module 等 BUILDSUCCESS 然后刷新项目就有 iml 文件了

    2025年10月16日
    7
  • Quartus II 13.0sp1 (64-bit)使用教程「建议收藏」

    Quartus II 13.0sp1 (64-bit)使用教程「建议收藏」本人大三在学习计算机组成原理,要用到QuartusII13.0sp1(64-bit),但是下载安装完以后发现不会用,世界这么大,百度也没有任何收获,啊啊啊,昨天终于会用了,所以写了这个教程,希望对大家有用,详情见图片这里会弹出来一个框,然后(next)然后得到下面这个图这里也有一个(next)省略了,都是点一下哦然后(next)——》(finsh)module…

    2022年10月10日
    4
  • Tomcat中的ResourceBundle国际化解析「建议收藏」

    Tomcat中的ResourceBundle国际化解析「建议收藏」一、ResourceBundle简介:资源束(ResourceBundle)是一个本地化对象。它封装了适用于本地环境的资源;这个类主要用来解决国际化和本地化问题。国际化和本地化可不是两个概念,两者都是一起出现的。可以说,国际化的目的就是为了实现本地化。比如对于“取消”,中文中我们使用“取消”来表示,而英文中我们使用“cancel”。若我们的程序是面向国际的…

    2022年7月12日
    18
  • SCCM系列之六部署操作系统(下)

    SCCM系列之六部署操作系统(下)

    2021年7月28日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号