linux shell 如何比较两个整数的大小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux shell 如何比较两个整数的大小相关的知识,希望对你有一定的参考价值。
我刚刚学习shell脚本,下面是我写的特简单的加班,可是总是有问题:[[09 not found
希望与大侠帮忙查看一下。
#!/bin/sh
max=9
min=8
if [[$max > $min]]
then
echo 1
else echo 0
fi
另外,shell中比较数字/字符都是咋比较的呀?能讲解一下吗?
多谢多谢!
linux shell比较两个整数的大小可以采用以下的代码:
#!/bin/sh
max=9
min=8
if [ $max -gt $min ]
then
echo 1
else
echo 0
fi
数字的比较:
-eq 相等(equal)
-ne 不等(not equal)
-gt 大于(greater than)
-lt 小于(less than)
-ge 大于等于 (greater than or equal)
-le 小于等于 (less than or equal)
字符串的比较:
[ $str1 = $str2 ] 等于
[ $str1 != $str2 ] 不等于
[ -z $str ] 空字符串返回true
[ -n $str ] 或者 [ $str ] 非空字符串返回true
扩展资料:
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。
shell命令
命令行c
用户登录到Linux系统时,可以看到一个shell提示符,标识了命令行的开始。用户可以在提示符后面输入任何命令及参数。例如:
$ date
二 11 23 01:34:58 CST 1999
$
用户登录时,实际进入了shell,它遵循一定的语法将输入的命令加以解释并传给系统。命令行中输入的第一个字必须是一个命令的名字,第二个字是命令的选项或参数,命令行中的每个字必须由空格或TAB隔开,格式如下:
$ Command Option Arguments
参考资料来源:百度百科-Linux Shell
max=9
min=8
if [ $max -gt $min ]
then
echo 1
else
echo 0
fi
数字的比较:
-eq 相等(equal)
-ne 不等(not equal)
-gt 大于(greater than)
-lt 小于(less than)
-ge 大于等于 (greater than or equal)
-le 小于等于 (less than or equal)
字符串的比较:
[ $str1 = $str2 ] 等于
[ $str1 != $str2 ] 不等于
[ -z $str ] 空字符串返回true
[ -n $str ] 或者 [ $str ] 非空字符串返回true本回答被提问者和网友采纳 参考技术B if [ max -gt min ]
-gt 大于
-lt 小于
-eq 等于
-ge 大于等于
-le 小于等于
-ne 不等于 参考技术C 中括号里两边必须有空格
关于SHELL脚本中日期大小的比较
在一个目录中有很多以当前日期为命名的文件夹(举例:20130801),我想实现把7天之前的文件夹全部删掉..请问具体怎么实现?
参考技术A 1、既然按照当前日期,创建的,那么应该可以根据系统给的时间戳为属性,完成操作即可。2、根据你的说法山掉7天谴的文件夹,那么应该是7天前建立的文件夹进行删掉所以用ctime。
find ./ -ctime +7 -exec rm -rf \; 参考技术B #!/bin/sh
find /path/you/want/to/delete -type d -mtime +7 -exec rm -r \;
把上面的写入到一个脚本里,如/usr/local/bin/del.sh
chmod +x /usr/local/bin/del.sh
把下面这行加入到cron job里:
0 1 * * * /usr/local/bin/del.sh本回答被提问者采纳
以上是关于linux shell 如何比较两个整数的大小的主要内容,如果未能解决你的问题,请参考以下文章