获取用户输入read

1. 基本的读取

echo -n "Enter your name:"
read name
echo "hello $name"

[-n]:不换行

read -p "Enter your name:" name
echo "hello $name"

[-p]:允许直接在read命令中指定提示符

read -p "Enter your name and age:" name age
echo "i am $age years old ,my name is $name"
read -p "Enter your name:" 
echo "hello $REPLY"

如果没有指定变量,会将接收到的任何数据都放到特殊环境变量REPLY中。

2. 读取超时

if read -t 5 -p "Enter your name:"name 
then 
 echo "hello $name"
else
 echo "time out"

也可以通过达到预设的字符数后,自动退出

read -n1 -p "Do you want to continue [Y/N]?" answer
case $answer in
Y|y) echo
     echo "cotinue...";;
N|n) echo
     echo "exit";;
     exit
esac 

[-n和1]在一起使用,表示接收单个字符后退出

3. 隐藏方式读取

read -s -p "Enter your password:" password
echo "your password is $password"

[-s]可以避免在read命令将输入数据显示在显示器上(实际是会显示的,只是颜色改成和背景色一样了)

4. 从文件中读取

count=1
cat test.txt | while read line
do
 echo "line $count:$line"
 count =$[ $count + 1 ]
done
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值