shell学习之获取用户的输入命令read

在运行脚本的时候,命令行参数是可以传入参数,还有就是在脚本运行过程中需要用户输入参数,比如你想要在脚本运行时问个问题,并等待运行脚本的人来回答。bash shell为此提 供了read命令。

read命令从标准输入(键盘)或另一个文件描述符中接受输入。在收到输入后,read命令会将数据放进一个变量,下面是read命令的最简单用法。

echo的 -n参数是为了换行

输出:

如果不是用-n,也可以直接read命令的 -p 参数,可以改成如下:

输出:

read命令会将提示符后输入的所有数据分配给单个变量,要么你就指定多个变量。输入的每个 数据值都会分配给变量列表中的下一个变量。如果变量数量不够,剩下的数据就全部分配给最后 一个变量。

输出:

也可以在read命令行中不指定变量。如果是这样,read命令会将它收到的任何数据都放进 特殊环境变量REPLY中。

输出:

使用read命令时要当心。脚本很可能会一直苦等着脚本用户的输入。如果不管是否有数据 9 输入,脚本都必须继续执行,你可以用-t选项来指定一个计时器。-t选项指定了read命令等待。

输入的秒数。当计时器过期后,read命令会返回一个非零退出状态码。

输出根据情况是否超时是以下两种:

read命令有一些选项支持定制脚本的输入数据,比如隐藏输入数据选项 -s

有什么讨论的内容,可以加我公众号:

猜你喜欢

转载自blog.csdn.net/woshiyexinjie/article/details/82766283