Linux脚本当中的read命令

语法

read [ -p ][  -r ][ -s ][ -u[ n ] ]  [-t ][  VariableName?Prompt ]

[ VariableName ... ]

描述

read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量,用 IFS(内部字段分隔符)变量中的字符作为分隔符。VariableName 参数指定 shell 变量的名称,shell 变量获取输入行一个字段的值。由VariableName 参数指定的第一个 shell 变量指定给每一个字段的值,由 VariableName 参数指定的第二个 shell 变量指定给第二个字段的值,以此类推,直到最后一个字段。如果标准输入行的字段比相应的由 VariableName 参数指定的 shell 变量的个数多,把全部余下的字段的值赋给指定的最后的 shell 变量。如果比 shell 变量的个数少,则剩余的 shell 变量被设置为空字符串。

Linux脚本当中的read命令_第1张图片


注意: 如果省略了 VariableName 参数,变量 REPLY 用作缺省变量名。
Linux脚本当中的read命令_第2张图片

由 read 命令设置的 shell 变量影响当前 shell 执行环境。

标志

-p 用 |& (管道,& 的记号名称)读取由 Korn shell 运行的进程的输出作为输入。

注:-p 标志的文件结束符引起该进程的清除,因此产生另外一个进程。

-r 指定读取命令把一个 \ (反斜杠) 处理为输入行的一部分,而不把它作为一个控制字符。

-s 把输入作为一个命令保存在 Korn shell 的历史记录文件中。

-u [ n ] 读取一位数的文件描述符号码 n 作为输入。文件描述符可以用 ksh exec 内置命令打开。n 的缺省值是 0,表示的是键盘。值 2 表示标准错误。

-t  :表示输入等待时间,超过这个时间read会结束;

你可能感兴趣的:(shell)