搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
不正经
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
分享8年开发经验,浅谈个人发展经历,明确自己发展方向
2
Azure 基础:使用 powershell 创建虚拟网络
3
Flutter完整开发实战详解(二、 快速开发实战篇) | 掘金技术征文
4
【leetcode】c语言刷题总结_leetcode malloc
5
LangGraph基础理解_langgraph官网
6
python程序的分支结构(专题)_掌握python分支程序结构的编程
7
【Linux】Supervisor 基础
8
node基于“multipart / form-data“转发表单上传文件到后台_node multipart/form-data
9
Android如何在Android Studio的模拟器里导入图片到系统相册并可以在哪里查看的到_模拟机 的device explorer中给模拟机的相册在哪
10
基于SpringBoot+协同过滤算法的家政服务平台设计和实现(源码+LW+部署讲解)
当前位置:
article
> 正文
shell的read方法使用介绍
作者:不正经 | 2024-03-25 09:35:37
赞
踩
hell read 不换行
关键字:获取用户输入echo -n(不换行)
read命令-p(提示语句) -n(字符个数) -t(等待时间) -s(不回显) 和“读文件”深入学习
1、基本读取
read命令接收标准输入(键盘)的输入,或其他文件描述符的输入(后面在说)。得到输入后,read命令将数据放入一个标准变量中。下面是read命令
的最简单形式::
#!/bin/bash
echo -n "Enter your name:" //参数-n的作用是不换行,echo默认是换行
read name //从键盘输入
echo "hello $name,welcome to my program" //显示信息
exit 0 //退出shell程序。
//********************************
由于read命令提供了-p参数,允许在read命令行中直接指定一个提示。
所以上面的脚本可以简写成下面的脚本::
#!/bin/bash
read -p "Enter your name:" name
echo "hello $name, welcome to my program"
exit 0
在上面read后面的变量只有name一个,也可以有多个,这时如果输入多个数据,则第一个数据给第一个变量,第二个数据给第二个变量,如果输入数据个数过多,则最后所有的值都给第一个变量。如果太少输入不会结束。
//*****************************************
在read命令行中也可以不指定变量.如果不指定变量,那么read命令会将接收到的数据放置在环境变量REPLY中。
例如::
read -p "Enter a number"
环境变量REPLY中包含输入的所有数据,可以像使用其他变量一样在shell脚本中使用环境变量REPLY.
2、计时输入.
使用read命令存在着潜在危险。脚本很可能会停下来一直等待用户的输入。如果无论是否输入数据脚本都必须继续执行,那么可以使用-t选项指定一个计时器。
-t选项指定read命令等待输入的秒数。当计时满时,read命令返回一个非零退出状态;
#!/bin/bash
if read -t 5 -p "please enter your name:" name
then
echo "hello $name ,welcome to my script"
else
echo "sorry,too slow"
fi
exit 0
除了输入时间计时,还可以设置read命令计数输入的字符。当输入的字符数目达到预定数目时,自动退出,并将输入的数据赋值给变量。
#!/bin/bash
read -n1 -p "Do you want to continue [Y/N]?" answer
case $answer in
Y | y)
echo "fine ,continue";;
N | n)
echo "ok,good bye";;
*)
echo "error choice";;
esac
exit 0
该例子使用了-n选项,后接数值1,指示read命令只要接受到一个字符就退出。只要按下一个字符进行回答,read命令立即
接受输入并将其传给变量。无需按回车键。
3、默读(输入不显示在监视器上)
有时会需要脚本用户输入,但不希望输入的数据显示在监视器上。典型的例子就是输入密码,当然还有很多其他需要隐藏的数据。
-s选项能够使read命令中输入的数据不显示在监视器上(实际上,数据是显示的,只是read命令将文本颜色设置成与背景相同的颜色)。
#!/bin/bash
read -s -p "Enter your password:" pass
echo "your password is $pass"
exit 0
4、读文件
最后,还可以使用read命令读取Linux系统上的文件。
每次调用read命令都会读取文件中的"一行"文本。当文件没有可读的行时,read命令将以非零状态退出。
读取文件的关键是如何将文本中的数据传送给read命令。
最常用的方法是对文件使用cat命令并通过管道将结果直接传送给包含read命令的while命令
例子::
#!/bin/bash
count=1 //赋值语句,不加空格
cat test | while read line //cat 命令的输出作为read命令的输入,read读到的值放在line中
do
echo "Line $count:$line"
count=$[ $count + 1 ] //注意中括号中的空格。
done
echo "finish"
exit 0
本文内容由网友自发贡献,转载请注明出处:
https://www.wpsshop.cn/w/不正经/article/detail/308655
推荐阅读
article
专项
测试
-如何
测试
APP所消耗的流量-基于
adb
shell
cat /
proc
/#pid#/
net
...
测试
工作中,APP的流量消耗情况有时也需要关注,这关系到用户使用的好感度,毕竟流量是要钱的
测试
注意事项:
测试
时候尽量用W...
赞
踩
article
Android
日志
分析01-
命令
篇_
android
shell
输出到
logcat
...
Android
开发者
日志
分析常用的一些
命令
收录_
android
shell
输出到
logcat
android
shell
...
赞
踩
article
使用
VMware
Shell
终端
操作
CentOS7
_vm
虚拟机
打开
shell
端口的快捷...
使用
VMware
Shell
终端
操作
CentOS7
_vm
虚拟机
打开
shell
端口的快捷vm
虚拟机
打开
shell
端...
赞
踩
article
【
Linux
命令-
shell
】
虚拟机
中创建
shell
脚本
、查看当前
路径
、
执行
脚本
_vm
虚拟机
运行sh...
shell
命令创建
shell
脚本
、查看当前
路径
、
执行
脚本
_vm
虚拟机
运行
shell
脚本
vm
虚拟机
运行
shell
脚本
...
赞
踩
article
VMWare
ESXi
本地登录进入
shell
界面_
esxi
shell
...
Esxi 本地进入
shell
方法。_
esxi
shell
esxi
shell
...
赞
踩
article
git
系列之六:
shell
显示
git
分支
名字
_
git
执行
指令后
分支
名称消失了...
在 ~/.bashrc中加入以下内容, 然后 source ~/.bashrc 立即生效 ===============...
赞
踩
article
shell
调用
securecrt
_
securecrt
导入x
shell
解决x
shell
、Secur...
securecrt
导入x
shell
解决x
shell
、
SecureCRT
中文乱码发布时间:2017-04-14来源:服务...
赞
踩
article
【
Linux
基础】
理解
并善用
Shell
--
Shell
精讲_
linux
shell
...
在计算机科学中,
Shell
俗称"壳"(之所以叫壳,是为了和计算机的"核"(内核)来区分),指 **=="为用户提供操作界...
赞
踩
article
Shell 脚本攻略--
文本处理
命令
详解(
sort
、
uniq
、
tr
)_在
xshell
中
排序
用什么
命令
...
文章目录
sort
命令
概述语法格式常用选项示例
uniq
命令
概述语法格式常用选项示例
tr
命令
概述语法格式常用选项参数示例so...
赞
踩
article
【
linux
】
Shell
编程
awk
命令
详解_
shell
awk
命令
详解...
在 Linux/UNIX 系统中,
awk
是一个功能强大的编辑工具,逐行读取输入文本,并根据指定的匹配模式进行查找,对符...
赞
踩
article
“
Shell
“
Awk
命令_
shell
awk
...
文本三剑客之
Awk
_
shell
awk
shell
awk
文...
赞
踩
article
shell
脚本--把
IP地址
以
for
循环
进行
遍历
_x
shell
for
循环
便利
ip
...
为了不让上线的服务器不与线网的
IP地址
相冲突,写一个
shell
脚本,把20.0.0.0/24网段在线的
IP地址
和不在线的...
赞
踩
article
shell
—
for
循环_
shell
for
循环...
shell
—
for
循环文章目录
shell
—
for
循环1.
for
循环基本概述1.1 什么是循环1.2 什么是
for
循环2....
赞
踩
article
【
Shell
命令
集合
网络
通讯 】⭐⭐⭐
Linux
测试与目标主机之间的
网络
连接
ping
命令
使...
在
Linux
中,
ping
命令
用于测试与目标主机之间的
网络
连接
。它发送一个ICMP回显请求(
ping
请求)到目标主机,并等...
赞
踩
article
Android学习之路解决问题_
alling
invokeandwait
from
read
-act...
呀呀先不管为什么了,能解决就好。。报错:com.android.ide.common.process.ProcessEx...
赞
踩
article
linux
操作系统
基础知识(组成 |
Kernel
|
Shell
| 目录结构)_
linux
内核 ...
目录一、
linux
的组成1.1 组成结构1.2
Shell
与
Kernel
二、Linux
Kernel
2.1
linux
...
赞
踩
article
【
Linux
】
Shell
与
权限
管理_
linux
给
shell
文件可执行的
权限
...
目录
Shell
Linux
中的
权限
概念
Linux
中用户种类文件与文件夹的
权限
粘滞位
Shell
Shell
:命令行解释器,是L...
赞
踩
article
Linux
:
sh
ell
+
权限
_
linux
sh
可执行
权限
...
命令行解释器。_
linux
sh
可执行
权限
linux
sh
可执行
权限
...
赞
踩
article
Linux
操作系统
概述1——
操作系统
、
Shell
、
Kernal
内核
讲解...
我们首先需要知道一台完整的计算机是由硬件组成的,而人不可以直接与硬件交互,为了完成交互,进行了以下的操作将硬件设备交由内...
赞
踩
article
Linux
-
Shell
权限
权限
管理
权限
修改
权限
身份的认证 目录的
权限
粘滞位_
shell
...
我们来输入指令的本质就是 输入字符串。而指令的本质,就是编译好的
文件
和脚本,而只要是
文件
,就会在系统的特定路径下存放。而...
赞
踩
相关标签
android
adb
linux
运维
网络
服务器
ESXI
shell 调用securecrt
shell
Linux
sort
uniq
tr
文本处理命令
unix
java
开发语言
嵌入式
c语言