当前位置: 首页 > 编程笔记 >

Shell脚本中判断变量为数字的3种方法

龙浩博
2023-03-14
本文向大家介绍Shell脚本中判断变量为数字的3种方法,包括了Shell脚本中判断变量为数字的3种方法的使用技巧和注意事项,需要的朋友参考一下

方法1:通过expr 计算变量与一个整数值相加,如果能正常执行则为整数,否则执行出错,$?将是非0的值


expr $args + 0 &>/dev/null

方法2:打印变量通过sed替换的方式,将变量中的数字替换为空,如果执行替换后变量为空,则为整数


echo $args | sed 's/[0-9]//g'

如果判断负数则再用sed过滤负号


echo $args | sed 's/[0-9]//g' | sed 's/-//g'

下面的脚本通过两个函数来实现数值判断。代码很简单,就不加注释了。


#!/bin/bash

usage(){

cat <<EOF

USEAGE:sh $0args1 args2

exit 1

EOF

}

checkInt(){

expr $1+ 0&>/dev/null

[ $? -ne 0] && { echo "Args must be integer!";exit 1; }

}

checkInt1(){

tmp=`echo $1|sed 's/[0-9]//g'`

[ -n "${tmp}"]&& { echo "Args must be integer!";exit 1; }

}

[ $# -ne 2]&&usage

args1=$1

args2=$2

checkInt $args1

checkInt1 $args2

if[ $args1 -gt $args2 ];then

echo "yes,$args1 greate than $args2"

else

echo "no,$args1 less than $args2"

fi

 类似资料:
  • 本文向大家介绍Shell中判断字符串是否为数字的6种方法分享,包括了Shell中判断字符串是否为数字的6种方法分享的使用技巧和注意事项,需要的朋友参考一下 本篇文章主要介绍了"shell 判断字符串是否为数字",主要涉及到shell 判断字符串是否为数字方面的内容,对于shell 判断字符串是否为数字感兴趣的同学可以参考一下。

  • 本文向大家介绍JS 判断某变量是否为某数组中的一个值的3种方法(总结),包括了JS 判断某变量是否为某数组中的一个值的3种方法(总结)的使用技巧和注意事项,需要的朋友参考一下 1.正则表达式 js 中判断某个元素是否存在于某个 js 数组中,相当于 PHP 语言中的 in_array 函数。 用法如下: var arr=new Array([‘b',2,‘a‘,4]); arr.in_array(

  • 本文向大家介绍linux shell中if的各种判断,包括了linux shell中if的各种判断的使用技巧和注意事项,需要的朋友参考一下 shell编程中使用到得if语句内判断参数   –b当file存在并且是块文件时返回真   -c当file存在并且是字符文件时返回真   -d当pathname存在并且是一个目录时返回真   -e当pathname指定的文件或目录存在时返回真   -f当fil

  • 拉斯宾(杰西)-root@RaspberryPi-腻子 在我输入的终端中 现在我得到了一个包含此代码的脚本 有一个cronjob每小时启动一次这个脚本 苏。一定有什么地方出错了。因为他将变量$finalanswer解读为nothing。 这意味着在此脚本之外定义的变量将不起作用? 我该如何解决这个问题?

  • 本文向大家介绍linux shell脚本对未定义变量的判断以及if的用法详解,包括了linux shell脚本对未定义变量的判断以及if的用法详解的使用技巧和注意事项,需要的朋友参考一下 环境 操作系统:win10 虚拟机:centos7 需求 因为公司有个脚本,是用于启动程序的,但是每次启动都要手动做如下两个操作: ①先查询之前的进程ID ②杀死之前的,在启动新了 时间长了弄得我很烦躁,所以就琢

  • 本文向大家介绍jQuery判断checkbox是否选中的3种方法,包括了jQuery判断checkbox是否选中的3种方法的使用技巧和注意事项,需要的朋友参考一下 jQuery能够极大提高html的编写效率,其中checkbox的选中判断有几种: 1, $(checkbox的id).prop("checked") 返回的是一个boolean值类型 2, $(this).is(":checked")