LoveUnix » 编程开发 & Rational » 菜鸟shell一问
让LU留住您的每

一天 让LU博客留住您的每一天
2006-3-19 13:34 jamen
菜鸟shell一问

初学shell,写了个东西想读近来一个人名,结果是死循环,请高人指教一二,多谢啦
#read name
while [ "$name"="" ]
do
echo -e "Enter one name please: \c"
read name
echo ${name}
done
name="$(echo "$name")"

2006-3-21 10:39 闲云
#cat read_name.sh
#!/bin/ksh
name="char"
while [ "$name" != "" ]
do
  echo  "enter one name, please: \c"
  read name
  echo $name
done

2006-3-21 10:43 闲云
[quote]原帖由 [i]jamen[/i] 于 2006-3-19 13:34 发表
初学shell,写了个东西想读近来一个人名,结果是死循环,请高人指教一二,多谢啦
#read name
while [ "$name"="" ]
do
echo -e "Enter one name please: \c"
read name
ech ... [/quote]

你设的循环条件是name=""
不知道你想输入什么退出来,是没有输入一直循环,还是。。。

下面这一段是没有输入循环,有输入退出
[code]
cat read_name.sh
#!/bin/ksh
#name="char"
while [ "$name" = "" ]
do
  echo  "enter one name, please: \c"
  read name
  echo $name
done
[/code]

[[i] 本帖最后由 闲云 于 2006-3-21 11:07 编辑 [/i]]

页: [1]
查看完整版本: 菜鸟shell一问


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.