LINUX:read命令
Shell内建命令
read命令从键盘读取变量的值,通常用在shell脚本中与用户进行交互的场合。该命令可以一次读取多个变量的值,变量和输入的值都需要使用空格隔开。在read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY
语法
read(选项)(参数)
选项
-p:指定读取值时的提示符; -t:指定读取值时等待的时间(秒)。
参数
变量:指定读取值的变量名。
实例
下面的列表给出了read命令的常用方式:
read 1987name 从标准输入读取输入并赋值给变量1987name。
read first last 从标准输入读取输入到第一个空格或者回车,将输入的第一个单词放到变量first中,并将该行其他的输入放在变量last中。
read 从标准输入读取一行并赋值给特定变量REPLY。
read -a arrayname 把单词清单读入arrayname的数组里。
read -p "text" 打印提示(text),等待输入,并将输入存储在REPLY中。
read -r line 允许输入包含反斜杠。
read -t 3 指定读取等待时间为3秒。
read -n 2 var 从输入中读取两个字符并存入变量var,不需要按回车读取。
read -d ":" var 用定界符“:”结束输入行。
read命令示例
从标准输入读取输入并赋值给变量1987name。
#read 1987name #等待读取输入,直到回车后表示输入完毕,并将输入赋值给变量answer HelloWorld #控制台输入Hello#echo $1987name #打印变量 HelloWorld
等待一组输入,每个单词之间使用空格隔开,直到回车结束,并分别将单词依次赋值给这三个读入变量。
#read one two three 1 2 3 #在控制台输入1 2 3,它们之间用空格隔开。#echo "one = $one, two = $two, three = $three" one = 1, two = 2, three = 3
REPLY示例
#read #等待控制台输入,并将结果赋值给特定内置变量REPLY。 This is REPLY #在控制台输入该行。#echo $REPLY #打印输出特定内置变量REPLY,以确认是否被正确赋值。This is REPLY
-p选项示例
#read -p "Enter your name: " #输出文本提示,同时等待输入,并将结果赋值给REPLY。 Enter you name: stephen #在提示文本之后输入stephen#echo $REPLY stephen
等待控制台输入,并将输入信息视为数组,赋值给数组变量friends,输入信息用空格隔开数组的每个元素。
#read -a friends Tim Tom Helen#echo "They are ${friends[0]}, ${friends[1]} and ${friends[2]}." They are Tim, Tom and Helen.
补充一个终端输入密码时候,不让密码显示出来的例子。
方法1:
#!/bin/bash read -p "输入密码:" -s pwd echo echo password read, is "$pwd"
方法2:
#!/bin/bash stty -echo read -p "输入密码:" pwd stty echo echo echo 输入完毕。
其中,选项-echo
禁止将输出发送到终端,而选项echo
则允许发送输出。
使用read命令从键盘读取变量值,并且将值赋给指定的变量,输入如下命令:
read v1 v3 #读取变量值
执行上面的指令以后,要求键入两个数据,如下所示:
Linux c+ #输入数据
完成之后,可以使用echo命令将指定的变量值输出查看,输入如下命令:
echo $v1 $v3 #输出变量的值
执行输出变量值的命令以后,将显示用户所输入的数据值,如下所示:
Linux c+ #输出变量值
注意:使用echo命令输出变量值时,必须在变量名前添加符号$
。否则,echo将直接输出变量名。
LINUX:read命令相关推荐
- linux常用命令(转载)
Linux常用命令大全(非常全!!!) 最近都在和Linux打交道,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短 ...
- linux if 命令判断条件总结
linux if命令 关于文件属性的判断式 -a 如果文件存在 -b 如果文件存在,且该文件是区域设备文件 -c 当file存在并且是字符设备文件时返回真 -d 当pathname存在并且是一个目录时 ...
- linux paste变量,Linux paste命令详解
Linux 命令大全 小白告诉你:Linux paste 命令用于合并文件的列. paste 指令会把每个文件以列对列的方式,一列列地加以合并. 语法 paste [-s][-d ][--help] ...
- linux unset命令,Linux unset命令
Linux unset命令 Linux unset命令用于删除变量或函数. unset为shell内建指令,可删除变量或函数. 语法unset [-fv][变量或函数名称] 参数:-f 仅删除函数. ...
- linux wc 命令简介
此wc命令不是让大家没有食欲的地方.而是linux下一个简单的小命令. NAME wc - word, line, character, and byte count SYNOPSIS wc [-cl ...
- linux mysql 命令 大全
linux mysql 命令 大全 1.linux下启动mysql的命令: mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.l ...
- Linux Find 命令精通指南
作者:Sheryl Calish Linux find 命令是所有 Linux 命令中最有用的一个,同时也是最混乱的一个.它很难,因为它的语法与其他 Linux 命令的标准语法不同.但是,它很强大,因 ...
- linux ps命令大全,Linux ps命令例子汇总
Linux ps命令主要用于查看系统运行的进程,确定进程运行的状态机是否占用过多资源等?下面学习啦小编通过实例来给大家详细介绍下Linux的ps命令,一起来了解下吧. Linux提供了当前进程的同时, ...
- linux用户在哪个文件夹,LINUX中用命令成功建立一个用户后信息会记录在哪个文件中...
LINUX中用命令成功建立一个用户后信息会记录在哪个文件中 发布时间:2007-07-28 10:14:57来源:红联作者:MPiops 增加用户帐号后 新建用户的命令十分简单,在命令行下使用 use ...
- Linux常见命令(二)
随着Linux应用的扩展许多同学开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.虽然Linux桌面应用发展很快,但是命令在Linux中依然有很强的生命力.Li ...
最新文章
- java多线程编程01---------基本概念
- lgg8各个版本_lgg8参数
- android 3.x,Android Studio3.x的坑(三)
- 一个箱子的梦想_长葛这中学“建”了一个“梦想厅”……
- 【报告分享】2020数字人民币发展研究报告.pdf(附下载链接)
- 小米 MIX4 发布、三年要拿下全球第一、还有一只 9999 元的狗?快看 3 个小时雷军都讲了什么!
- 通过身份证号查出所在籍贯以及性别。
- 关于C语言中数组输入与打印
- 凯明启示录:倒闭风潮刚开始
- Photoshop裁剪工具隐藏技巧
- scikit-learn中的KMeans聚类实现
- 1.认识华为数据通信
- Echarts3通过ajax动态获取数据,30秒定时图表数据,设置图表线条颜色和粗细
- 电脑一键还原,电脑怎么一键还原系统(手把手教你电脑一键还原)
- 单因素方差分析(ANOVA)及其Python库
- 【从0到1搭建LoRa物联网】6、国产LoRa终端ASR6505 I2C接口
- 海尔集团CEO/张瑞敏•演讲语录!
- 数据预处理——离散化
- 上海宏满实业档案管理规范化
- 电话机怎么注册到服务器上,技术|将 VoIP 电话直接连接到 Asterisk 服务器