猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
SHELL中$[num1]这种写法是什么意思
SHELL中$[num1]这种写法是什么意思?
num1=$[2*3]
num2=$[1+5]
if test $[num1] -eq $[num2]
点丶阙4015137
浏览 3239
回答 1
1回答
pardon110
在shell中是test操作命令,通常用来测试文件,比较数字,字符串。而代码语句的[]表示进行基本的算数运算。$在shell中通常表示对变量内容的引用。其中 -eq是测试条件中的操作符,判断是否相等num1=$[2*3] #计算表达式2*3的值赋给变量num1 test $[num1] - eq $[num2] # 比较数值变量num1与数值变量2是否相等需要注意的是在shell中赋值时,=号两边不能有空格,右边值默认为字符串类型,在sell中变量的定义与使用是两个概念,定义完变量,在使用变量值时,需要在变量名前加$符号简单来讲 $[num1] 是表示使用一个数值变量,而$str则是使用一个字符串变量,${nam}这种形式则表示为进行对变量的使用(不确定变量类型)对于 a=3+7 ,若$a则值为字符串3+7,若$[a]则对其内容值进行运算后的结果为10。前者默认为字符串,后者则是程序表达式语句。前者相当于其它语言中的对字符加了单双引号,后者类似js或python语言中的eval函数传入一个字符串,通过相应解释器进行评估计算
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关问题
centos7里没有locate命令,请问在哪里有centos6.5的镜像文件?
2 回答
相关分类
Linux
linux
2 回答
centos7里没有locate命令,请问在哪里有centos6.5的镜像文件?
2 回答
运维
线上环境部署的问题
2 回答
阿里云环境部署问题
2 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续