zoukankan      html  css  js  c++  java
  • 每日linux命令学习-read命令

    read命令

    作用

    从标准输入中读取一行。

    语法

    read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]

    描述

    read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量。

    标志

    -e 在一个交互式 shell 中使用 readline 获取行。

    -s 输入回显设置,能够使read命令中输入的数据不显示在监视器上。

    -r 不允许反斜杠转义任何字符

    -p 输出提示语句。

    -n 命令计数,指定read后面的变量所接收的字符个数,而不是等到读取换行符,但是分隔符仍然有效。

    -N 在准确读取了 nchars 个字符之后返回,除非遇到了文件结束符或者读超时,任何的分隔符都被忽略

    -t 计时输入,指定read命令等待输入的秒数,当计时满时,read命令返回一个非零退出状态。

    -a 将词语赋值给 ARRAY 数组变量的序列下标成员,从零开始

    -d 持续读取直到读入 DELIM 变量中的第一个字符,而不是换行符。

    -i  使用 TEXT 文本作为 readline 的初始文字

    -u fd 从文件描述符 FD 中读取,而不是标准输入
     

    退出状态

    这个命令返回下列出口值:

    0 成功完成;

    >0 检测到文件结束符或一个错误发生。

    示例

    下列脚本打印一个文件,这个文件中每行的第一个字段被移动到本行的末尾。

    while read -r xx yy

    do

             print printf "%s %s/n" $yy $xx

    done < InputFile读取一行,把它分成字段,并使用 "Please enter: " 作为提示符,请输入:

    read word1?"Please enter:  " word2系统显示:

    Please enter:

    You enter:

    hello world变量 word1 的值应该是 "hello",变量 word2 应该是 "world."

    为创建一个共同进程,用 print -p 写到共同进程,并用 read -p 从共同进程中读取输入,请输入:

    (read; print "hello $REPLY")

    print -p "world"

    read-p line变量 line 的值应该是 "hello world."

    为把输入行的副本保存为历史文件中的一个命令,请输入:

    read -s line < input_file如果输入文件包含 "echo hello world," ,那么在历史记录文件中将会把 "echo hello world" 保存为一个命令。

  • 相关阅读:
    如何自定义一个通信协议
    c++ 如何编写接口类(interface)
    QT国际化(中英转换)
    QT中文乱码与国际化支持
    frp官方中文文档
    K3 LEDE固件更改FRP客户端版本
    Linux下的tar压缩解压缩命令详解
    QT入门系列(3):控制台输出QString
    Delphi、Lazarus保留字、关键字详解
    使用TortoiseSVN的客户端钩子脚本触发Jenkins构建
  • 原文地址:https://www.cnblogs.com/yy20141204bb/p/4930782.html
Copyright © 2011-2022 走看看