获取用户输入
基本的读取:
输入的每个数据值都会分配给变量列表中的下一个变量。如果变量数量不够,剩下的数据就全部分配给最后 一个变量。
read var1 var2 …:将读取的数据放入变量var中
read –p “提示信息” var1 var2 …:将按照提示输入的数据放入变量var中
若在read命令行中不指定变量,read命令会将它收到的任何数据都放进特殊环境变量REPLY中。
read -p "Enter your name: "
echo Hello $REPLY, welcome to my program.
超时:
使用-t 选项来指定read命令等待输入的秒数,当超时后,read命令会返回一个非零退出状态码
read –t second –p “提示信息” var1 var2 …:read 命令等待second时间后,返回非零退出状态码
设置预期字符数,当输入的字符达到预设的字符数时,就自动退出
read –n num –p “提示信息” var1 var2 …:-n num 用来设置预期的字符数为num
隐藏方式读取
-s 选项可以避免在read命令中输入的数据出现在显示器上
read –s –p “提示信息” var1 var2 …:将输入的数据赋值给变量,但是不会显示输入的数据。
从文件中读取
read每次读取文件中的一行文本,但首先要将文件中的数据传递给read命令,常与cat命令组合使用
cat fileName | read line
每次从fileName文件中读取一行数据,并将数据存放在line变量中,直到文件中没有内容时,返回非零退出状态码。
相关博文
shell 命令 – 获取用户输入