我们之前讲过位置参数变量是用来向脚本中传递值的。
而我们在说明位置参数变量的时候,也说过位置参数变量的缺点,在执行脚本的时候,是没有给脚本所需要参数的提示。
这样的情况非常的不友好,可以用read
命令来解决,read
命令是用来接收键盘输入的命令,并提示相关输入说明。
read
命令格式如下:
[root@localhost ~]# read [选项] [变量名]
选项:
-p:“提示信息”:在等待read输入时,输出提示信息。
-t:秒数:read命令会一直等待用户输入,使用此选项可以指定等待时间。
-n:字符数:read命令只接受指定的字符数,就会执行。
-s:隐藏输入的数据,适用于机密信息的输入。
变量名:
变量名可以自定义,如果不指定变量名,会把输入保存入默认变量REPLY。
如果只提供了一个变量名,则整个输入行赋予该变量。
如果提供了一个以上的变量名,则输入行分为若干字,一个接一个地赋予各个变量,而命令行上的最后一个变量取得剩余的所有字。
示例
# 定义一个shell脚本count.sh,计算两个数的和。