-eq和=的区别
2015-11-10 01:43
253 查看
今天写脚本时遇到一个错误:
大体如下:
在判断是否相等的时候出现了错误,后来改为
顺利通过。
查了一下,才发现,虽然-eq和=都有判断两边是否相等的功能,但是-eq偏向整数数字,不能进行字符串的测试,=既适用于数字又适用于字符串。从网上粘了一个小测试,功能明了:
大体如下:
echo "please input you choice(yes/no)" read input if [ $input -eq yes ];then exit 0 fi
在判断是否相等的时候出现了错误,后来改为
这里写代码片
echo "please input you choice(yes/no)" read input if [ "$input" = "yes" ];then exit 0 fi
顺利通过。
查了一下,才发现,虽然-eq和=都有判断两边是否相等的功能,但是-eq偏向整数数字,不能进行字符串的测试,=既适用于数字又适用于字符串。从网上粘了一个小测试,功能明了:
$ [ 1 -eq 1 ] && echo "ok" ok $ [ 1 = 1 ] && echo "ok" ok $ [ "a" -eq "a" ] && echo "ok" sh: [: a: 需要整数表达式 $ [ "a" = "a" ] && echo "ok" ok
相关文章推荐
- fdsafdsafdsafdsafdsa
- ffdsafdas
- SLua 绑定 Protobuf-Lua (protoc-gen-lua) 在SLua中使用 Protobuf
- 如何防止表单重复提交
- Hash Map (Hash Table)
- HashMap Collision Resolution
- 关于配置文件加载的疑虑
- Mesh Renderer详解
- 系统调用和库函数
- Quick小白书系列(二)创建自己的项目并做点有意思的小内容
- Unity3D中MeshRenderer的使用
- Xcode7 使用NSURLSession发送HTTP请求报错
- Quick小白书系列(一)Quick的基本结构及如何开始入门
- 【绑定自定义类至Lua】(四)使用绑定C++至Lua的自定义类
- 提高代码质量技巧
- 【绑定自定义类至Lua】(三)动手绑定自定义类至Lua
- curl的安装
- Java的异常处理机制
- Python爬虫(图片)编写过程中遇到的问题
- 【绑定自定义类至Lua】(二)新建项目中配制环境