首先要明白一个概念:bash中所有的变量都是字符串。对变量进行数值计算时,只不过是把字符串转换成数字,然后计算,计算后再把结果数字转换为字符串。 再说"==“和”-eq"的区别 "=="是判断字符串是否相等。 "-eq"是判断字符串对应的数字值是否相等。 举个栗子。 创建eq.sh脚本 >vi eq.sh 内容如下 #!/bin/...
51CTO博客已为您找到关于bash -eq的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及bash -eq问答内容。更多bash -eq相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。
/bin/bashnum1=10num2=20if[$num1-eq$num2];thenecho"两个数相等"elif[$num1-lt$num2];thenecho"第一个数小于第二个数"elseecho"第一个数大于第二个数"fi 在上面的示例中,我们使用了-eq、-lt和-gt比较运算符来比较两个整数的大小关系,并根据结果输出相应的信息。
1、整数测试: -eq 等于 -lt 小于 -ne 不等于 -gt 大于 -le 小于等于 -ge 大于等于 integer:整数 INTEGER1=63 INTEGER2=77 [ $INTEGER1 -eq $INTEGER2 ] [[ $INTEGER1 -eq $INTEGER2 ]] test $INTEGER1 -eq $INTEGER2 2、文件测试: -e file: 测试文件是否存在 -f file: 测试文件是否为普通文...
在此示例中,命令 whoami 的输出与单词“root”进行比较。对于字符串比较 ==, !=, < 应该使用 and 对于数值比较 eq, ne,lt 和 gt 应该使用。 Bash 示例 6. 增强的括号 在上述所有示例中,我们仅使用单括号来包围条件表达式,但 bash 允许使用双括号,作为单括号语法的增强版本。
我做了下测试: bash$ [ 1 -eq 1 ] && echo "ok" ok $ [ 1 = 1 ] && echo "ok" ok $ [ "a" -eq "a" ] && echo "ok" sh: [: a: 需要整数表达式 $ [ "a" = "a" ] && echo "ok" ok 楼主想进一步了解的话可以搜索下"shell 条件测试" 有用 回复 查看全部 3 个回答 ...
$ test 10 -eq 20 && echo "true" || echo "false" 上面的命令中: test - test 命令 10 - 第一个变量 -eq - 比较运算符 20 - 第二个变量 如果给定的表达式有效,则执行第一个命令,否则执行第二个命令。在上述测试命令中,可以使用方括号 [] 来代替 test 命令。不过有一点需要记住,[ 标记和要比较...
#gt表示greater than,也就是大于,同样有-lt(小于),-eq(等于) then : # 什么都不做,退出分支 else echo "$condition" fi 变量扩展/子串替换 在与> 重定向操作符结合使用时,将会把一个文件清空,但是并不会修改这个文件的权限。如果之前这个文件并不存在,那么就创建这个文件。
这个时候a就是当做数字在使用,因为在Bash中条件判断中,‘-eq’表示的是数字的比较操作。 # a=5 # if (($a == 5)); then echo $a; fi 这个时候a就是当做数字在使用(如果不是数字,则结果为否),因为在Bash中(())表示的是对数字的操作。
= STRING2 the strings are not equal INTEGER1 -eq INTEGER2 INTEGER1 is equal to INTEGER2 有用2 回复 TechliveZheng 2.1k11315 发布于 2012-12-18 尽量使用 extended test 吧,即 [[ ]],里面可以使用比较习惯的 == 代替=,并且不用担心 word spliting 和 filename expansion. 有用 回复 ...