Linux shell script unexpected operator问题

zhangrongchao_ 2015-02-24 08:37:37
下面是一段shell脚本,根据输入来判断输出;

#2015/02/21 ZRC First Relearse
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
export PATH

read -p "please input (Y/N):" yn
[ "$yn" == "Y" ] || [ "$yn" == "y" ] && echo "OK, continue" && exit 0
[ "$yn" == "N" ] || [ "$yn" == "n" ] && echo "Oh, interrupt!" && exit 0
echo "I do not know what your choice is " && exit 0

我输入“y"后,出现以下错误。百思得其解;
please input (Y/N):n
sh06-2.sh: 8: [: n: unexpected operator
sh06-2.sh: 8: [: n: unexpected operator
sh06-2.sh: 12: [: n: unexpected operator
sh06-2.sh: 12: [: n: unexpected operator
I do not know what your choice is

请问问题出在哪?
...全文
271 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
QKForex 2015-03-11
  • 打赏
  • 举报
回复
可能是脚本编码格式的问题 执行以下命令试试 dos2unix script.sh 再重新执行看看
ljc007 2015-02-28
  • 打赏
  • 举报
回复
我的RHEL5里面测试没有问题 你用的什么操作系统?
iasky 2015-02-25
  • 打赏
  • 举报
回复
我这里默认bash是没有问题的,你在第一行加入 #!/bin/bash

19,613

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧