Linux Shell基础 read命令
read命令
read 命令用于接收标准输入(键盘)的输入,或者其他文件描述符的输入。得到输入后,read 命令将数据放入一个标准变量中,read 命令格式如下:
- [root@localhost ~]# read [选项] [变量名]
选项:
- -p "提示信息":在等待read输入时,输出提示信息;
- -t 秒数:read命令会一直等待用户输入,使用此选项可以指定等待时间;
- -n 字符数:read命令只接收指定的字符数就会执行;
- -s: 隐藏输入的数据,适用于机密信息的输入;
变量名:
- 变量名可以自定义。如果不指定变量名,则会把输入保存到默认变量REPLY中;
- 如果只提供了一个变量名,则将整个输入行赋予该变量;
- 如果提供了一个以上的变量名,则输入行分为若干字,一个接一个地赋予各个变量,而命令行上的最后一个变量取得剩余的所有字;
read命令示例
- [root@localhost sh]# vi read.sh
- #!/bin/bash
- read -t -p "Please input your name:" name
- #提示"请输入姓名"并等待30秒,把用户的输入保存到变量name中
- echo "Name is $name"
- #看看变量"$name"中是否保存了你的输入
- read -s -t -p "Please enter your age:" age
- #提示"请输入年龄"并等待30秒,把用户的输入保存到变量age中
- #年龄是隐私,所以我们用"-s"选项隐藏输入
- echo -e "n"
- #调整输出格式,如果不输出换行,则一会儿的年龄输出不会换行
- echo "Age is $age"
- read -n -t -p "Please select your gender[M/F]:" gender
- #提示"请选择性别"并等待30秒,把用户的输入保存到变量gender中
- #使用"-n 1"选项只接收一个输入字符就会执行(无须按回车键)
- echo -e "\n"
- echo "Sex is $gender"
执行脚本:
- [root@localhost sh]# chmod read.sh
- 赋予执行权限
- [root@localhost sh]#./read.sh
- #执行脚本
- Please input your name: zhang san
- #在read的提示界面输入姓名
- Name is zhang san
- #"$name"变量中保存了我们的输入
- Please enter your age:
- #因为加入了"-s"选项,所以输入不会显示在命令行上
- Age is
- #"$age"变量中保存了我们的输入
- Please select your gender[M/F]: M
- #因为加入了"-n 1"选项,所以只能输入一个字符
- Sex is M
- # "$gender"变量中保存了我们的输入
Linux Shell基础 read命令的更多相关文章
- Linux Shell基础(下)
Linux Shell基础(下) 目录 一.shell特殊符号cut命令 二.cut.sort.wc.uniq命令 三.tee.tr.split命令 四.简易审计系统 五.fork, exec, so ...
- Linux shell基础知识(上)
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.b ...
- linux shell 基础 使用日志与心得
linux shell 基础 使用日志与心得 1.#!/bin/bash 第一行就出现#!/bin/bash是指此脚本使用/bin/bash来解释执行.其中,#!是一个特殊的表示符,其后,跟着解释此脚 ...
- (linux shell)第二章--命令之乐(一)
文章来自于我的个人博客:(linux shell)第二章--命令之乐(一) 上一章我们描写叙述了一些linux shell中须要注意的一些语法.接下来我们開始了解linux shell的经常使用 ...
- Linux Shell基础 Bash常见命令 history、alias命令以及常用快捷键
概述 shell中常见命令history 历史纪录命令:history 命令格式如下: [root@localhost ~]# history [选项] [历史命令保存文件] -c:清空历史命令: ...
- Linux Shell 基础知识(一)
1. 本文知识结构 2. shell 基础知识 2.1 shell 简单介绍 GNU bash shell 能提供对 Linux 系统的交互式访问,一般来说,使用快捷键 Ctrl + Alt + ...
- Linux Shell 05 位置变量(命令行参数)
在Linux shell 脚本中可能会用到一些命令行参数,常见如下: $0:脚本名称 $#:执行脚本时传入的参数个数,不包括脚本名称 $@:所有参数 $*:所有参数 $1...$9:第1个参数.... ...
- linux shell基础语法
1.第一个Shell脚本 打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了. 输入一些代码 ...
- shell基础--test命令的使用
test :用于文件类型检查和变量比较 一.用途: 1.判断表达式 2.判断字符串 3.判断整数 4.判断文件 测试例子: (1).test [root@~_~ day5]# cat test.sh ...
随机推荐
- int abs(int number)函数有感: 求补码和通过补码求对应的整数 C++(增加:数字的二进制表示中1的个数)
#include "limits.h" #include "math.h" int abs(int number) { int const mask = num ...
- hdu5802 Windows 10 贪心
Windows 10 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- 大数据(5) - HDFS中的常用API操作
一.安装java 二.IntelliJ IDEA(2018)安装和破解与初期配置 参考链接 1.进入官网下载IntelliJ IDEA https://www.jetbrains.com/idea/d ...
- flex初始化方法
initalize是初始化,creationcomplete是创建完成,applicationComplete是应用程序中所有的实例都创建完成后才执行,三者的执行顺序是intalize creatio ...
- 认识oracle的update更新
这两天给新同事安排了一个工作,即做一个update 的级联更新,在实际操作中发现了一个问题.就是对于Oracle的更新的语法,大部分人尤其是学过SqlServer的人在使用oracle的时候对于ora ...
- Wireshark使用注意事项
一直在使用老板的Wireshark,因为4G网络的逐步开通,越来越须要新版Wireshark来解析一些数据包. 在更换了新Wireshark的1.11.3后发现原来能够解析Gb口数据的NSIP不见了 ...
- node.js的安装与第一个hello world、node.js的初始化
1.下载node.js文件 2.windows下点击安装 重复下一步即可 3.编辑工具 EditPlus编辑器 4.新建保存目录的文件夹,并新建一个文本文档 5.打开EditPlus编辑器 打开 ...
- 使用Nexus管理Maven仓库时,上传带依赖的第三方jar
总所周知,使用Maven构建非常方便.在企业中使用Nexus创建私服来管理Maven时,需要上传很多没有开放源码的第三方Jar包.本文将讲述当第三方Jar包有很多并且互相有依赖时如何上传. 核心操作 ...
- angularjs 发送ajax请求的问题
在angularjs中使用 ajax 如果使用 jquery的 ajax发送请求会遇到结果返回了,但是页面的值却没有改变,如: $scope.queryNameMatch = function() { ...
- jquery,日常 记录知识 点 (选择器的引用类型)
1.标签引用$("p").$("input")例子 $("p").append( $("input").map(func ...