zoukankan      html  css  js  c++  java
  • Linux命令之read

      read命令可以读取标准输入的值,并赋予变量。一次可以读取多个变量的值,变量名或标准输入之间使用空格隔开。如果read命令后面没有指定变量名,那么读取到的值将自动赋予特殊变量REPLY。

    read [选项] [变量名  [变量名 变量名 ...]]

    (1).常用选项

    -s  将标准输入内容隐藏,多用于隐藏用户密码;
    -t [超时时间]  超过指定的时间限制没有输入,将会自动退出当前命令;
    -n [字符长度]  限制接收的字符长度,接收到指定字符长度后会自动退出当前命令;
    -r  允许输入空格、/、、?等特殊字符;
    -p [字符串]  给出输入内容的提示,多用于脚本
    

    (2).实例

      输入多个变量名,读取多个值

    [root@youxi1 ~]# read a b
    1 2
    [root@youxi1 ~]# echo $a
    1
    [root@youxi1 ~]# echo $b
    2
    

      隐藏标准输入内容

    [root@youxi1 ~]# read -s password
    [root@youxi1 ~]# echo $password
    123456
    

      指定超时时间

    [root@youxi1 ~]# read -t 2 a
    [root@youxi1 ~]# echo $?
    142
    

      指定输入的字符串长度

    [root@youxi1 ~]# read -n 2 a
    12[root@youxi1 ~]# 
    

      允许输入特殊字符

    [root@youxi1 ~]# read a
    
    
    [root@youxi1 ~]# echo $a
    n
    [root@youxi1 ~]# read -r a    
    
    
    [root@youxi1 ~]# echo $a
    
    
    

      在输入前提示当前应该输入的内容,其实类似于echo -n "[提示内容]";read [变量名]

    [root@youxi1 ~]# read -p "请输入密码:" password
    请输入密码:123456
    [root@youxi1 ~]# echo -n "请输入密码:";read password
    请输入密码:123456
    

      脚本综合使用

    [root@youxi1 ~]# vim a.sh
    #!/bin/bash
    read -p "请输入您的账号:" username
    read -p "请输入您的密码:" -s -r password
    echo  #换行
    read -p "请输入您的邮箱:" email
    echo "账号:"$username
    echo "密码:"$password
    echo "邮箱:"$email
    [root@youxi1 ~]# sh a.sh
    请输入您的账号:xuexi
    请输入您的密码:
    请输入您的邮箱:xuexi@shiwokuaile.com
    账号:xuexi
    密码:123456!@#$%^
    邮箱:xuexi@shiwokuaile.com
    

      

  • 相关阅读:
    本地网络硬盘之在本地使用MsnSkydriver
    编写代码生成器自动赋值方法
    向Html动态加载内容(动态加载脚本,css)
    巧用asp.net(1):自动生成页面头部信息
    Ruby On Rails各版本需注意
    添加强命名程序集
    Javascript写入Html
    SQL Function (SQL自定义函数)
    (译)SDL.NET Surfaces 相关介绍
    用CSS设置Table的细边框的几种方法
  • 原文地址:https://www.cnblogs.com/diantong/p/11640861.html
Copyright © 2011-2022 走看看