Linux之read命令使用

read命令:

read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量

1)read后面的变量var可以只有一个,也可以有多个,这时如果输入多个数据,则第一个数据给第一个变量,第二个数据给第二个变量,如果输入数据个数过多,则最后所有的值都给最后一个变量

-p  read –p “提示语句”,则屏幕就会输出提示语句,如下图

当变量个数和输入个数一样时:

注意空格,要不会出错

当变量个数和输入个数不一样时,即输入个数比变脸个数多,则多的都赋给最后一个变量:

2)命令计数

-n

read –n 个数

设置read命令计数输入的字符。当输入的字符数目达到预定数目时,自动退出,并将输入的数据赋值给变量

看一下cc.sh脚本的内容:

read –n 1的意思是只接受一个字符

执行

这里输入y后不用回车,自己就执行

3)等待时间

-t 时间

read –t 时间

使用read命令存在着潜在危险。脚本很可能会停下来一直等待用户的输入。如果无论是否输入数据脚本都必须继续执行,那么可以使用-t选项指定一个计时器。-t选项指定read命令等待输入的秒数。当计时满时,read命令返回一个非零退出状态;

看一下cc.sh脚本的内容:

执行cc.sh然后等待超过5s,发现自动退出了

4)关闭回显

-s

read –s

-s选项能够使read命令中输入的数据不显示在监视器上(实际上,数据是显示的,只是read命令将文本颜色设置成与背景相同的颜色),比如密码

看一下cc.sh的脚本内容

执行,看到输入密码的时候屏幕不显示

6)从文本读取内容并且赋给变量

6)读取输入
#!/bin/bash
echo -e "Please enter your test :"
read TESTREAD last
echo $TESTREAD
echo $last
结果显示输入内容。
Please enter your test
ni hao mingtian
ni
hao mingtian
7 综合应用

[root@NTP-SERVER shell]# ./4read.sh
are your happy?
happy
happy is the right
where do you work?beijing
lguess beijing keeps you busy!
enter your job title?worker
I thought you might be an worker
who are your best friends?li ming bo
Say hi to ming
[root@NTP-SERVER shell]# cat 4read.sh
#!/bin/bash
echo -e "are your happy?"
read answer
echo "$answer is the right"

echo -n "where do you work?"
read
echo lguess $REPLY keeps you busy!

read -p "enter your job title?"
echo "I thought you might be an $REPLY"

echo -n "who are your best friends?"
read -a friends
echo "Say hi to ${friends[1]}"

可以发现echo -e会有回车,-n着没有

read是按照空格进行分割的

读取文件和输入——read 脚本命令的更多相关文章

  1. shell读取文件每行,并执行命令

    #!/bin/bash while read line do $line & done < /path/filename

  2. 常用shell脚本命令

    常用shell脚本命令 1.显示包含文字aaa的下一行的内容: sed -n '/aaa/{n;p;}' filename 2.删除当前行与下一行的内容: sed -i '/aaa/{N;d;}' f ...

  3. linux 读取文件信息并且输出

    版权为个人所有,欢迎转载如转载请说明出处.(东北大亨) http://www.cnblogs.com/northeastTycoon/p/5513231.html 以下为读取文件信息做输出操作. 1. ...

  4. Perl读取标准输入<STDIN>、读取文件输入<>和chomp函数

    读取标准输入<STDIN> <STDIN>表示从标准输入中读取内容,如果没有,则等待输入.<STDIN>读取到的结果中,如果没有意外,都会自带换行符. 例如,tes ...

  5. 使用expect实现自动交互,shell命令行自动输入,脚本自动化,变量引用,expect spawn执行带引号命令,expect 变量为空,不生效,不能匹配通配符*,函数,数组

    背景 有需求,在允许命令或者脚本跳出交互行,需要进行内容输入,但需要人手动输入,不是很方便,此时可以通过expect来实现自动互动交互. expect是一个自动交互功能的工具,可以满足代替我们实际工作 ...

  6. shell脚本命令 运行python文件&python命令行运行python代码

    单独的python文件运行的时候 报错: 在shell脚本中,运行shell脚本命令:在Python命令行中,运行Python代码.然而,“python hello.py”是一个脚本命令,不是pyth ...

  7. LoadRunner 脚本学习 -- 读取文件内容

    随便创建个txt文档  输入点内容,例如 读取文件内前N个字符: Action() { long myfile; ; ]; char *filename = "E:\\kkk.txt&quo ...

  8. 用adb pull命令从android系统中读取文件失败的原因及解决办法

    问题:使用adb pull命令从android系统中读取文件失败.显示:Permission denied   原因:是由于文件权限原因引起.       使用ls -l命令查看android系统中的 ...

  9. 使用while和read命令读取文件内容

    转:使用while和read命令读取文件内容 1.准备数据文件 $cat a.txt 200:2 300:3 400:4 500:5 2.用while循环从文件中读取数据 #!/bin/ksh whi ...

随机推荐

  1. Windows Shell远程执行代码漏洞((CVE-2018-8414)复现

    0x00   SettingContent-ms文件介绍 .SettingContent-ms是在Windows 10中引入的一种文件类型,它的内容是XML格式进行编写的,主要用于创建Windows设 ...

  2. matlab绿色版本合集

    网上找的matlab绿色版本合集链接https://pan.baidu.com/s/1gfDyIo7     密码:pxrs

  3. Chapter 7(图)

    1.Prim算法生成最小生成树 //Prim算法生成最小生成树 void MiniSpanTree_Prim(MGraph G) { int min,i,j,k; int adjvex[MAXVEX] ...

  4. python的str()字符串类型的方法详解

    字符串一旦创建,不可修改,一旦修改或者拼接,都会造成重新生成字符串,因为内存存数据是一个挨着一个存的,如果增加一个字符串的话,之前的老位置只有一个地方,不够,这是原理性的东西,在其他语言里面也一样 7 ...

  5. python---基础知识回顾(六)网络编程

    python---基础知识回顾(十)进程和线程(进程) python---基础知识回顾(十)进程和线程(多线程) python---基础知识回顾(十)进程和线程(自定义线程池) 一:Socket (一 ...

  6. 视音频数据处理入门:PCM音频采样数据处理

    ===================================================== 视音频数据处理入门系列文章: 视音频数据处理入门:RGB.YUV像素数据处理 视音频数据处理 ...

  7. Redis学习七:Redis的持久化-总结(Which one)

    1.官网建议 2.RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储 3.AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些 命令来恢复原始的数据,AOF命令以red ...

  8. angularJS $watch $apply $digest

    看O'Reilly的书看到$watch这部分,不过没看懂,网上很多资料也含糊不清,不过还是找到了几个好的,简单记录一下. 一句话说明,$watch是用来监视变量的,好了直接上代码 <html&g ...

  9. git fatal: The remote end hung up unexpectedly 错误

    使用git将本地项目添加到远程仓库报以下错误 $ git push -u origin master fatal: The remote end hung up unexpectedly | 11.0 ...

  10. Windows系统环境下Solr之Java实战(二)配置从MySQL数据库批量导入索引

    1.将D:\JavaWeb\Solr\solr-6.2.0\dist下面的solr-dataimporthandler-6.2.0.jar和solr-dataimporthandler-extras- ...