liunx shell基础
read命令
Linux read命令用于从标准输入读取数值。read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。
语法格式:read [参数][变量名]
常用参数:
参数 | 作用 |
---|---|
-a | 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符 |
- d | 后面跟一个标志符,其实只有其后的第一个字符有用,作为结束的标志 |
- p | 后面跟提示信息,即在输入前打印提示信息 |
- e | 在输入的时候可以使用命令补全功能 |
- n | 后跟一个数字,定义输入文本的长度 |
- r | 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了 |
- s | 安静模式,在输入字符时不再屏幕上显示 |
- t | 后面跟秒数,定义输入字符的等待时间 |
- u | 后面跟fd,从文件描述符中读入,该文件描述符可以是exec新开启的 |
使用常用的参数做个示例:
[userwin@MiWiFi-R3L-srv 22:48:14 32 ~/testshell]$ vim testRead.sh
#!\bin\bash
echo "输入用户名:"
read userName
echo "用户名:$userName "
read -t 60 -s -p "请在60s输入密码" pwd
echo "密码:$pwd"
read -n 1 -t 30 -p "请选择[Y|N]:" choose
echo "你的选择是:$choose"
[userwin@MiWiFi-R3L-srv 22:47:26 31 ~/testshell]$ sh testRead.sh
输入用户名:
123
用户名:123
请在60s输入密码密码:aaa
请选择[Y|N]:N你的选择是:N
read 命令没有换行哦