shell脚本报错:"[:=:unaryoperatorexpected"

在匹配字符串相等时,我用了类似这样的语句:

if [ $STATUS == "OK" ]; then
echo "OK"
fi

在运行时出现了[:=:unaryoperatorexpected的错误,就一直找不到原因,尝试了删除等号两侧的空格和括号里的空格都不管用,最后baidu了一下,才找到原因。把语句改成这样就不会出错了.

if [[ $STATUS = "OK" ]];
then
echo "OK"
fi

究其原因,是因为如果变量STATUS值为空,那么就成了[="OK"],显然[和"OK"不相等并且缺少了[符号,所以报了这样的错误。当然不总是出错,如果变量STATUS值不为空,程序就正常了,所以这样的错误还是很隐蔽的。

或者用下面的方法也能避免这种错误:if["$STATUS"x=="OK"x];thenecho

"OK"fi。当然,x也可以是其他字符。顺便提一点,shell中有没有双引号在很多情况下是一致的。

转载于:https://blog.51cto.com/983836259/1323031

shell脚本报错:[: =: unary operator expected相关推荐

  1. (实例讲解)shell脚本报错 [: =: unary operator expected

    问题 使用脚本完成nfs的自动配置时,出现了如下错误[: =: unary operator expected,经查询发现属于等号两边是否相等的问题 可以看到此处命令所表达的含义为: 当为1时,清空/ ...

  2. linux 简单脚本fi报错,shell脚本报错:[: =: unary operator expected

    shell脚本报错:"[: =: unary operator expected" 在匹配字符串相等时,我用了类似这样的语句: if [ $STATUS == "OK&q ...

  3. 运行shell脚本报错:“syntax error near unexpected token 的解决方法”

    运行shell脚本报错:"syntax error near unexpected token 的解决方法" 今天写了个Cshell脚本,运行报错syntax error near ...

  4. shell脚本报错:“[: =: unary operator expected“解决办法

    在匹配字符串相等时,我用了类似这样的语句: if [ $STATUS == "OK" ]; then echo "OK"fi 在运行时出现了 [: =: una ...

  5. shell脚本报错:-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory

    今天写了一个shell脚本,然后在执行的时候报错,脚本内容很简单,仅供测试: Shell代码   #!/bin/sh echo "test shell " 具体报错信息如下: Sh ...

  6. Linux shell 脚本报错:/bin/bash^M: bad interpreter: No such file or directory

    今天遇到一个很诡异的问题,一直运行很正常的shell脚本失败了,只是昨天增加了一个参数而已. 报错信息: /bin/bash^M: bad interpreter: No such file or d ...

  7. linux的shell脚本报错“syntax error near unexpected token `”的解决

    今天写了一个shell脚本,老报错检查了一下基本的语法并没有发现错误.后来经过百度解决掉了,现总结如下. 错误现象:执行shell脚本,老报错"syntax error near unexp ...

  8. CRLF line terminators导致shell脚本报错:command not found

    Linux和Windows文本文件的行结束标志不同.在Linux中,文本文 件用"/n"表示回车换行,而Windows用"/r/n"表示回车换行.有时候在Win ...

  9. CRLF line terminators导致shell脚本报错:command not found --转载

    Linux和Windows文本文件的行结束标志不同.在Linux中,文本文件用"/n"表示回车换行,而Windows用"/r/n"表示回车换行.有时候在Wind ...

最新文章

  1. web服务器错误配置文件,web服务器http配置文件
  2. 经验 | 图像分割的实用技巧
  3. AI论文引用排行榜丨微软第一,清华第九;Alphabet董事长看AI:美国仅领先5年,大陆追赶速度快;
  4. centos中用MySQL创建新表_CentOS下使用Shell批量创建数据库表
  5. 概述nodejs核心机制
  6. 汽车雷达 -- 车载ADAS常用中英文对照
  7. 《食堂远程下单系统》设计规格说明书
  8. VTK:网格之QuadricClustering
  9. 【初等数论】指数、原根与不定方程
  10. 安装grunt-browser-sync时报错:“未能加载Visual C++ 组件 “VCBuild.exe”
  11. android 项目 功能 源码 eclipse的
  12. ddmmyy日期格式是多少_如何在Excel 2013/2016/2019中将mmddyyyy文本转换为普通日期格式...
  13. 三菱FX系列PLC编程口通讯协议实例
  14. MPQ4420HGJ DCDC电源设计+SIMetrix+Spice仿真模型
  15. plsql导出表结构语句
  16. 信创办公--基于WPS的Word最佳实践系列(修改标题样式快速实现章前分页效果)
  17. 4、Unity商店,导入资源
  18. 香港地区Airbnb数据可视化分析
  19. 高防服务器高防ip高防cdn和现在的云防护用哪种好呢
  20. 音频/面板资源管理器_AudioPanelManager

热门文章

  1. 机器学习-终结者是否会出现
  2. 脸书开源第一个使用卷积神经网络技术的端到端语音识别系统
  3. 一个AI产品经理怎么看AI的发展
  4. SAP LSMW 导入Open PO单据,系统报错 --- GL account 670100 cannot be used ---
  5. requests抓取以及Xpath解析
  6. (已解决)IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY。Someone could be eavesdropping on you
  7. python中->是什么意思
  8. 后香农时代,华为提出10大数学挑战问题
  9. 科技/IT:2019 年 Q3 表现最佳和最差的企业
  10. 物理哲学和生物哲学的对抗