1.read命令键盘读取变量的值
从键盘读取变量的值,通常用在shell脚本中与用户进行交互的场合。该命令可以一次读取多个变量的值,变量和输入的值都需要使用空格隔开。在read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY
read从键盘读入数据,赋给变量
例1:
read a b
hello world
echo $a $b #引用变量
hello world #输出结果
2. read常用见用法及参数
例1:从标准输入读取一行并赋值给变量passwd
read passwd
例2:读取多个值,从标准输入读取一行,直至遇到第一个空白符或换行符。把用户键入的第一个词存到变量first中,把该行的剩余部分保存到变量last中
read firt last
aaaa bbbb #结果
例3:read -s passwd 将你输入的东西隐藏起来,值赋给passwd。这个用户隐藏密码信息
read -s passwd
echo $passwd
123456
例4:输入的时间限制
read -t 10 time #超过10秒没有输入,直接退出
例5:输入的长度限制
read -n 2 test #最多只接受2个字符
例6:使用-r参数输,允许让输入中的内容包括:空格、/、\、 ?等特殊字符串。
read -r line
sdf sdf / sdfs /n
echo $line
sdf sdf / sdfs /n
例7:-p 用于给出提示符,在前面的例子中我们使用了echo –n “…“来给出提示符
方法1:
read -p "please input: " pass
please input: 123456
echo $pass
123456
方法2:
echo -n "please input: " ; read pass
please input: 123456
echo $pass
123456
例8:read 综合实例
vim test-read.sh
#写入以下内容
#!/bin/bash
read -p "请输入姓名:" NAME
read -p "请输入年龄:" AGE
read -p "请输入性别:" SEX
cat <<EOF
*********************
你的基本信息如下:
姓名: $NAME
年龄:$AGE
性别:$SEX
********************
EOF
执行
sh test-read.sh
请输入姓名:xuegod
请输入年龄:111
请输入性别:man
*********************
你的基本信息如下:
姓名: xuegod
年龄:111
性别:man