sh报错 [: unexpected operat

来源:互联网 发布:fq软件是什么 编辑:程序博客网 时间:2024/05/29 12:37

问题

shell脚本之前一直执行正常,今天突然报错了

root@node:~/scripts# sh JavaInstall.sh JavaInstall.sh: 22: [: unexpected operatorJavaInstall.sh: 32: [: unexpected operator

解决办法

原来Ubuntu下sh连接到dash,不是bash。
dash是啥玩意,不知道。
还是把sh连接到bash吧,执行命令sudo dpkg-reconfigure dash,弹出框选择No。
这里写图片描述

root@node:~# sudo dpkg-reconfigure dash正在删除 dash 导致 /bin/sh 转移到 /bin/sh.distrib正在添加 bash 导致 /bin/sh 转移到 /bin/sh.distrib正在删除 dash 导致 /usr/share/man/man1/sh.1.gz 转移到 /usr/share/man/man1/sh.distrib.1.gz正在添加 bash 导致 /usr/share/man/man1/sh.1.gz 转移到 /usr/share/man/man1/sh.distrib.1.gz
0 0