LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 832|回复: 5

如何验证Bash的输入?

[复制链接]
发表于 2008-10-21 13:46:50 | 显示全部楼层 |阅读模式

  1. while [ -n$app ]
  2. do
  3. read -p "Please input the project name you would like to create,and press [ENTER]:" app
  4. echo $app
  5. done

  6. xxx(other code)
复制代码


我希望用户输入一些内容才可以继续进行,如果不输入会一直提示用户进行输入。上面的代码并不能起作用,请问我应该如何修正?

谢谢。
发表于 2008-10-21 13:51:41 | 显示全部楼层
while [ "$app" = "" ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-21 13:58:23 | 显示全部楼层
对不起,上面的代码似乎不起作用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-21 14:10:10 | 显示全部楼层
我现在的写法是这样:
  1. while [ "X$app"="X" ]#这里是看到书上写着,这样可以避免空值的错误信息,所以加X
  2. do
  3. read -p "Please input the project name you would like to create,and press [ENTER]:" app
  4. echo $app
  5. done
复制代码

但这段代码无论如何都跳不出循环。
回复 支持 反对

使用道具 举报

发表于 2008-10-21 14:11:40 | 显示全部楼层
read xxx
这个已经满足您的需求,清除多余代码即可

执行 help,看看关于read的描述
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-10-21 14:24:19 | 显示全部楼层
  1. while [ -z "$app" ]
  2. do
  3. read -p "Please input the project name you would like to create,and press [ENTER]:" app
  4. echo $app
  5. done
复制代码
这段代码就起作用了,谢谢。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表