请问各位大神,echo $((5==5))为什么返回1呢
请问各位大神,echo $((5==5))为什么返回1呢 在Shell脚本中,$((...))是用于进行算术运算的语法。在表达式中,==表示等于操作符。当比较两个数相等时,表达式的结果为真,即返回1。因此,echo $((5==5))会输出1,表示5等于5。这是因为==运算符用于比较两个数是否相等,并且返回一个布尔值,其中1表示真,0表示假。
希望能够解答您的疑问。如果还有其他问题,请随时提问。
球一个最佳答案谢谢啦!这对我非常重要!{:10_254:}{:10_254:}{:10_254:} 在Bash中, $((...)) 是一种算术扩展语法,用于执行数学运算。在这种语法中, == 是比较运算符,用于比较两个值是否相等。
在这个问题中, 5==5 是一个比较表达式,用于判断数字5是否等于数字5。由于5确实等于5,所以这个比较表达式的结果为真,也就是返回1。
在Bash中,布尔表达式的真值通常用1表示,而假值用0表示。因此,当比较表达式为真时, $((5==5)) 会返回1。 Mike_python小 发表于 2023-10-31 17:19
在Shell脚本中,$((...))是用于进行算术运算的语法。在表达式中,==表示等于操作符。当比较两个数相等时, ...
那为什么echo $(2>1) 返回值又是0呢,2>1是真,在shell中,测试条件表达式中,真返回0,假返回1 isdkz 发表于 2023-10-31 17:22
在Bash中, $((...)) 是一种算术扩展语法,用于执行数学运算。在这种语法中, == 是比较运算符,用于比较两 ...
那为什么echo $(2>1) 返回值又是0呢,2>1是真,在shell中,测试条件表达式中,真返回0,假返回1 sunchaoee 发表于 2023-10-31 17:33
那为什么echo $(2>1) 返回值又是0呢,2>1是真,在shell中,测试条件表达式中,真返回0,假返回1
歌者文明清理员 发表于 2023-10-31 18:25
# echo $(2>1)
# echo $?
0
上面命令执行后,返回的值是0啊 sunchaoee 发表于 2023-10-31 23:06
# echo $(2>1)
# echo $?
发图片 歌者文明清理员 发表于 2023-11-1 17:28
发图片
echo $(2>1)没有返回结果,用echo $?则返回了0 sunchaoee 发表于 2023-11-3 23:43
echo $(2>1)没有返回结果,用echo $?则返回了0
{:10_257:}不会了 歌者文明清理员 发表于 2023-11-4 00:19
不会了
还是感谢你的解释 概念弄混淆了, echo$?返回的结果是你上一个命令执行的结果, 执行成功返回0执行失败返回1 上面echo$(2>1) 或者 echo $(1>2)是比值问题,无法是否成立 这个命令都是成功的echo$?都会返回0
页:
[1]