linux eq是什么意思
linux eq的意思是“等于”,是linux中的一种比较运算符,用于判断字符串对应的数字值是否相等;该运算符的使用方法如“if [ $num1 -eq $num2 ] then echo "$num1和$num2xiangdeng" else echo "$num1和$num2buxiangdeng"”。
本教程操作环境:linux5.9.8系统、Dell G3电脑。
linux eq是什么意思?
linux shell(bash)测试表达式中“==“和“-eq“的区别
首先要明白一个概念:bash中所有的变量都是字符串。 对变量进行数值计算时,只不过是临时把字符串转换成数字,然后计算,计算后再把结果数字转换为字符串。
再说"==“和”-eq"的区别
"=="是判断字符串是否相等。
"-eq"是判断字符串对应的数字值是否相等。
举个例子。
创建eq.sh脚本
>vi eq.sh
内容如下
#!/bin/bash num1=123 #num1是长度为3的字符串 num2=0123 #num2是长度为4的字符串 echo "======================================" echo -n "用==比较时:" if [ $num1 == $num2 ] then echo "$num1和$num2相等" else echo "$num1和$num2不相等" fi echo "======================================" echo -n "用-eq比较时:" if [ $num1 -eq $num2 ] then echo "$num1和$num2相等" else echo "$num1和$num2不相等" fi
运行测试
>bash eq.sh
结果一目了然
====================================== 用==比较时:123和0123不相等 ====================================== 用-eq比较时:123和0123相等
结论:
==直接比较字符串,-eq比较字符串对应的数字值。
!=、>、 <、 >=、 <= 与-ne、 -gt、 -lt、 -ge、 -le 的区别依此类推
相关推荐:《Linux视频教程》