shell(九)读取控制台输入

简介: 在我们实际的编程中,一定会和用户有交互,那我们如何读取用户在控制台中输入的值呢?Shell为我们提供了一个命令:read对,你没看错,就是这么语义化,就是read。

在我们实际的编程中,一定会和用户有交互,那我们如何读取用户在控制台中输入的值呢?

Shell为我们提供了一个命令:read

对,你没看错,就是这么语义化,就是read。

他有一些参数:

-a 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符。

-p 后面跟提示信息,即在输入前打印提示信息。

-e 在输入的时候可以使用命令补全功能。

-n 后跟一个数字,定义输入文本的长度,很实用。

-r 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了。

-s 安静模式,在输入字符时不再屏幕上显示,例如login时输入密码。

-t 后面跟秒数,定义输入字符的等待时间。

测试一下:

1:没有参数使用read

vim she.sh

在文件中键入以下内容:

bash

复制代码

#! /bin/bash
echo "请输入你想输入的字符串:"
read string
echo "你输入的字符串是:$string"

执行she.sh文件,输出:

bash

复制代码

[root@VM_0_4_centos test]# ./she.sh
请输入你想输入的字符串:
qwertyuiop
你输入的字符串是:qwertyuiop

 2:使用参数-p/-t

使用if-else来编写一个测试的小程序把,执行程序等待10秒,未输入答案,直接退出程序。

代码如下所示:

在she.sh文件中键入如下的内容:

bash

复制代码

#! /bin/bash
if read -t 10 -p "请输入博客地址:" url
then
    echo "你的博客地址是:$url"
else
    echo "您输入超时了!"
fi

执行she.sh文件,如下所示:

bash

复制代码

[root@VM_0_4_centos test]# ./she.sh
请输入博客地址:guanchao.site
你的博客地址是:guanchao.site
[root@VM_0_4_centos test]# ./she.sh
请输入博客地址:您输入超时了!
[root@VM_0_4_centos test]#

以上大概就是linux系统shell编程中read命令的基本使用。

有好的建议,请在下方输入你的评论。

目录
相关文章
|
1月前
|
Shell Linux Perl
Shell基础学习---3、Read读取控制台输入、函数、综合应用案例:归档文件、正则表达式入门(第二天学习)
Shell基础学习---3、Read读取控制台输入、函数、综合应用案例:归档文件、正则表达式入门
41 1
|
6月前
|
Shell Linux Perl
Shell基础学习---3、Read读取控制台输入、函数、正则表达式入门
Shell基础学习---3、Read读取控制台输入、函数、正则表达式入门
|
存储 Shell
Shell的read 读取控制台输入、read的使用
Shell的read 读取控制台输入、read的使用
Shell的read 读取控制台输入、read的使用
|
存储 Shell
Shell的read 读取控制台输入、read的使用
read是Shell内置命令,用来从标准输入中读取数据并赋值给变量。如果没有进行重定向,默认就是从键盘读取用户输入的数据;如果进行了重定向,那么可以从文件中读取数据。
246 1
Shell的read 读取控制台输入、read的使用
|
1天前
|
运维 Java 应用服务中间件
Tomcat安装shell脚本
Tomcat安装shell脚本
14 7
|
1天前
|
运维 应用服务中间件 Shell
Nginx安装与虚拟主机配置shell脚本
Nginx安装与虚拟主机配置shell脚本
6 0
|
14天前
|
Shell
shell脚本for循环复杂用法
shell脚本for循环复杂用法
25 5
|
14天前
|
Shell
Shell脚本中的`case`语句
Shell脚本中的`case`语句
18 5
|
14天前
|
Shell
在Shell脚本中,使用`if`语句进行复杂的条件判断
在Shell脚本中,使用`if`语句进行复杂的条件判断
16 2
|
15天前
|
数据采集 JavaScript 前端开发
Shell脚本自动抢购火车票
Shell脚本自动抢购火车票
16 3

热门文章

最新文章

相关产品

  • 云迁移中心