read命令:在shell中主要用于读取输入、变量、文本

1. 接受标准输入(键盘)的输入,并将输入的数据赋值给设置的变量
     【按回车键——表示输入完毕】
     【若输入的数据多于设置的变量数,则将多出的部分全部赋给最后一个变量】
     【若没有设置变量,则将输入的数据赋给环境变量REPLAY】

#!/bin/bash
echo -n "Enter your name:"
read name1 name2
echo hello,$name1,$name2 # ./read.sh
Enter your name:taeyeon jessica
hello,taeyeon,jessica

2.  -p 在read命令行中直接print一个提示

#!/bin/bash
read -p "Enter your name:" name1 name2
echo hello,$name1,$name2 # ./read.sh
Enter your name:taeyeon jessica
hello,taeyeon,jessica

 3.  -t 实现计时输入。指定read命令等待输入的秒数。

#!/bin/bash
if read -t -p "Enter your name:" name ## -p后要直接接提示语,注意多选项时怎么用
then
echo hello,$name
else
echo -e "\nsorry,too slow"
fi
exit # ./read.sh
Enter your name:jelly
hello,jelly
# ./read.sh
Enter your name:
sorry,too slow

4. -n   实现计数输入。指定read命令接受输入的数据长度。当超过这个长度,无论按任意键都表示输入结束。
    -n1 表示接受一个字符的输入就退出,不需要按回车键

#!/bin/bash
read -n1 -p "Do you want to continue [y/n]?" y1
case $y1 in
Y|y) echo -e "\nok,continue!";;
N|n) echo -e "\nok,stop!";;
*) echo -e "\nerror choice!"
esac # ./read.sh
Do you want to continue [y/n]?y
ok,continue!
# ./read.sh
Do you want to continue [y/n]?n
ok,stop!
# ./read.sh
Do you want to continue [y/n]?p
error choice!

5. -s 实现隐藏输入。实际是使得输入的数据和背景色一致。常用于接受密码输入时。

#!/bin/bash
read -s -p "Enter you password:" passwd
echo -e "\n"
echo "haha,your passwd is:$passwd" [root@sxjy ~]# ./read.sh
Enter you password:
#看不见吧...
haha,your passwd is:aixocm

6. 读取文本中的数据作为read的输入

#!/bin/bash
count=
cat gg.txt | while read name #逐行读取gg.txt文本中的内容给变量name
do
echo "$count:$name"
count=$[$count+]
done # ./read.sh
:taeyeon
:jessica
:sunny

[shell基础]——read命令的更多相关文章

  1. shell基础--test命令的使用

    test :用于文件类型检查和变量比较 一.用途: 1.判断表达式 2.判断字符串 3.判断整数 4.判断文件 测试例子: (1).test [root@~_~ day5]# cat test.sh ...

  2. [shell基础]——find命令

    find命令选项 -name 按照文件名查找 -type 查找某一类型的文件(b 代表设备块:d 目录:c 字符设备文件:l 符号(软)链接文件:f 普通文件) -size 查找文件长度或者大小 -p ...

  3. [shell基础]——sed命令

    关于sed sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓 ...

  4. [shell基础]——echo命令

    echo命令:在shell中主要用于输出 1. -n     不换行的显示结果(默认是换行的) 2. -e " "  支持双引号中使用一些特殊字符 常用的特殊字符有 \a 发出警告 ...

  5. [shell基础]——sort命令

    sort命令 sort是按照ASCII码升序输出,且是从首字符依次向后比较的 常见选项      -c 测试文件是否已经被排序 -r  逆向排序      -n 按照数字数值大小排序 -t  指定分割 ...

  6. [shell基础]——uniq命令

    uniq命令常见选项      去除重复行      -u  显示不重复的行      -d  显示有重复的行      -c  打印每一行重复的次数 测试文本内容如下: # cat 4.txt 11 ...

  7. [shell基础]——cut命令

    cut命令常见选项

  8. shell基础--cat命令的使用

    一.cat的常用用法 1.总结 2.实验 (1).非交互式编辑 [root@~_~ day5]# cat > cattest.sh <<STOP > hello > ST ...

  9. Shell基础-Bash命令类型

    Bash命令大体可以分为两类: 第一类是可执行文件,例如ls等 第二类是Bash内建命令,常见echo,cd等 bash命令优先级表:1别名  由alias指定 2关键字 3函数  由function ...

随机推荐

  1. jquery+javascript编写国籍控件

    主要功能和界面介绍 国籍控件主要支持中文.英文过滤以及键盘上下事件. 源码介绍 国籍控件核心是两个文件,navtionality.js 和 mian.css.navtionality.js主要功能是国 ...

  2. 关于hbase的read操作的深入研究 region到storefile过程

    这里面说的read既包括get,也包括scan,实际底层来看这两个操作也是一样的.我们将要讨论的是,当我们从一张表读取数据的时候hbase到底是怎么处理的.分二种情况来看,第一种就是表刚创建,所有pu ...

  3. Linux下yum安装MPlayer 或 LVC视频播放器

    添加第三方源 su -c 'rpm -ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noar ...

  4. Android IOS WebRTC 音视频开发总结(三七)-- 台湾help

    本文主要介绍上周跟帮一个台湾程序员解决RTC的故事,文章来自博客园RTC.Blacker(更多信息详见www.rtc.help),支持原创,转载请说明出处. 故事是这样的:一个台湾刚毕业的程序员在公司 ...

  5. 运行ipython后显示WARNING: IPython History requires SQLite, your history will not be saved

    在CentOS6.5下将自带的python2.6升级到python2.7,并安装了ipython,启动ipython后显示如下信息: WARNING: IPython History requires ...

  6. Java设计模式(Design Patterns In Java)读书摘要——第1章 绪论

    为何需要模式 模式是做事的方法,是实现目标,研磨技术的方法.通俗点说,模式是为了解决某个行业的某个问题的有效的方法或技艺. 为何需要设计模式 为了提升代码的水准,是代码变得简洁而易用.模式是一种思想, ...

  7. sqlite:多线程操作数据库“database is locked”解决方法(二)

    上一篇博客<sqlite:多线程操作数据库“database is locked”解决方法>通过注册延时函数的方法来处理数据库被锁的问题.此方法固然能解决问题,但是在多个线程向数据库写入大 ...

  8. Silverlight DataGrid标题行居中

    1.引用命名空间 xmlns:Primitives="clr-namespace:System.Windows.Controls.Primitives;assembly=System.Win ...

  9. 整理一些有意思的php笔试题

    慢慢补充 1.下面这段代码的输出是什么: $a = in_array('01', array('1'))==var_dump('01'==1); echo $a; 说明:in_array('01', ...

  10. 火狐浏览器设置placeholder的时候记得改opacity

    最近做项目的时候涉及到需要修改输入框的placeholder的字体颜色,我的CSS如下: ::-webkit-input-placeholder{ color: #c5c5c5;}::-moz-pla ...