脚本如下:% Y8 A0 y/ u" Y4 y9 k$ K' f #!/bin/bash # Program:5 Q8 z" [4 q x, Q! H4 L # This program shows the user's choice # History:5 C/ X8 |' M: p. i3 N #2005/08/25 VBird Firstrelease8 L" l& i( \4 d0 h2 A, e% Q PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin& }. S" B. l9 X* D export PATH h3 Y9 ^, i6 z$ B( U* B; ]) m read -p "Please input (Y/N): " yn [ "$yn" == "Y" -o "$yn" == "y" ] &&echo "OK, continue" && exit0 [ "$yn" == "N" -o "$yn" == "n" ] &&echo "Oh, interrupt!" && exit0 echo "I don't know what your choice is"&& exit 0 9 u. O D |9 O2 ]) n 执行时总提示错误9 `7 R$ O: q' i$ }* }& P root@dustsnow-laptop:~/scripts# sh sh06.sh: V' p6 m+ o+ s- A. T. y Please input (Y/N): y [: 10: y: unexpected operator [: 11: y: unexpected operator I don't know what your choice is 但是在虚拟机的fedora 11系统中却执行正确.! D6 h: [! w" N. B& w: D, z) o: M + d: I8 {2 z" Z( R0 y' O: L0 D 是这样解决的:在ubuntu中文站上得到解决的方法.( |8 H- C; i' L& k 因为ubuntu默认的sh是连接到dash的,又因为dash跟bash的不兼容所以出错了.执行时可以把sh换成bash文件名.sh来执行.成功.dash是什么东西,查了一下,应该也是一种shell,貌似用户对它的诟病颇多.3 O: q$ Z9 K5 A by the way修改sh默认连接到bash的一种方法: sudo dpkg-reconfigure dash0 Q$ c+ `. U+ c2 K 选择no即可. | 装了个集成环境。
[: 11: y: unexpected operator问题
最新推荐文章于 2023-11-10 13:41:57 发布