#!/bin/sh
echo "What is your favourite OS?"
select var in "Linux" "Gnu Hurd" "Free BSD" "Other"; do
break
done
echo "You have selected $var"
保存为hello
执行./hello结果出现如下问题。
What is your favourite OS?
./hello: 3: select: not found
./hello: 4: break: not found
./hello: 5: Syntax error: "done" unexpected
谁能帮我解释一下?
shell小程序的问题。
- KyTor
- 帖子: 222
- 注册时间: 2006-12-05 22:23
- 来自: http://www.wengyuanhang.com/
- 联系:
shell小程序的问题。
虔诚的信徒啊!请相信KyTor吧!
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
- KyTor
- 帖子: 222
- 注册时间: 2006-12-05 22:23
- 来自: http://www.wengyuanhang.com/
- 联系:
……这个不是循环啊。这个是wiki上面的例子,不过不知道是怎么回事,我这边就无法运行,老报错。
虔诚的信徒啊!请相信KyTor吧!
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
- KyTor
- 帖子: 222
- 注册时间: 2006-12-05 22:23
- 来自: http://www.wengyuanhang.com/
- 联系:
汗死。我这是按wiki上面的例子照搬。不过如果将sh改成bash那还是会提示break不存在。eexpress 写了:到,你那个是sh。用sh执行。不是用缺省的bash执行。
虔诚的信徒啊!请相信KyTor吧!
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
-
- 帖子: 1331
- 注册时间: 2006-07-09 12:22
- 来自: 南京
- KyTor
- 帖子: 222
- 注册时间: 2006-12-05 22:23
- 来自: http://www.wengyuanhang.com/
- 联系:
嗯,按leal上面所说的,是/sh,但我却提示错误,而改成bash后就可以了。当然我按照你所说的,空格正确输入,问题得到解决。但原因是为什么。需要四个空格?helo_aBiNg 写了:作者leal的意思应该是:break语句前是四个空格,然而如果你是复制过去直接运行,由于网页编辑的某些原因会出错,请手动输入几个空格,应该可以了。KyTor 写了:汗死。我这是按wiki上面的例子照搬。不过如果将sh改成bash那还是会提示break不存在。
虔诚的信徒啊!请相信KyTor吧!
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;
http://www.wengyuanhang.com/
------------------
愿上帝赐我平静,接受我无法改变的事;
愿上帝赐我勇气,改变我能够改变的事;
愿上帝赐我智慧,能明辨这两者的差异;