Skip to content
KARINKARIN
博客主页
项目总览
知识要点
捣鼓折腾
Git笔记
Excel修炼秘籍
github icon
  • 博客主页
    • 项目总览
          • Shell脚本笔记
            • Shell脚本介绍
              • Shell语法
                • Shell格式化输出
                  • Shell格式化输入
                    • read 命令
                      • 实例
                      • Shell变量
                        • Shell数组
                          • Shell运算
                            • Shell流程控制---if判断语句
                              • Shell流程控制---for循环语句
                                • Shell流程控制---while循环语句
                                  • Shell流程控制---until循环语句
                                    • Shell流程控制---case分支语句
                                      • Shell函数
                                        • Shell正则表达式
                                          • Shell对文本的搜索---grep命令
                                            • Shell对文件的操作---sed命令
                                              • Shell对输出流的处理---awk命令
                                                • Shell监控脚本
                                                  • Shell脚本---lamp环境安装

                                                Shell格式化输入

                                                author iconkarincalendar icon2021年4月9日category icon
                                                • 教程
                                                tag icon
                                                • shell
                                                timer icon大约 1 分钟

                                                此页内容
                                                • read 命令
                                                • 实例

                                                # read 命令

                                                默认接收键盘的输入,回车符代表输入结束。

                                                命令格式如下:

                                                [root@localhost ~]# read [选项]
                                                选项:
                                                	-p:打印信息,一般放在 -s -t -n 的后面,否则可能会出错
                                                	-t:限定时,单位秒
                                                	-s:不回显
                                                	-n:输入字符个数
                                                
                                                1
                                                2
                                                3
                                                4
                                                5
                                                6

                                                # 实例

                                                1. 模拟系统登陆
                                                #!/bin/bash
                                                clear
                                                
                                                #echo -n -e "Login:  "
                                                #read acc
                                                read -p "Login:  " acc
                                                
                                                #echo -n -e "psssword:  "
                                                #read -s -t10 -n8 pw
                                                read -s -t10 -n8 -p "Password:  " pw
                                                echo
                                                echo -e "account:  $acc\tpassword:  $pw "
                                                
                                                1
                                                2
                                                3
                                                4
                                                5
                                                6
                                                7
                                                8
                                                9
                                                10
                                                11
                                                12
                                                1. 利用管道读取文件内容
                                                #!/bin/bash
                                                count=1								#赋值语句,不加空格
                                                cat test.txt | while read line		#cat的输出作为read的输入,read读到的值放入line
                                                do
                                                	echo "Line $count:$line"
                                                	count=$[ $count + 1 ]			#注意中括号中的空格
                                                done
                                                echo "Finish"
                                                exit 0
                                                
                                                1
                                                2
                                                3
                                                4
                                                5
                                                6
                                                7
                                                8
                                                9

                                                每次调用 read 命令都会读取文件中的 "一行" 文本(文本文件的每一行结尾都有一个回车符)。当文件没有可读的行时(即没有回车符时),read 命令将以非零状态退出。

                                                通过什么样的方法将文件中的数据传给 read 呢?使用 cat 命令并通过管道将结果直接传送给包含 read 命令的 while 命令。

                                                edit icon编辑此页open in new window
                                                上一页
                                                Shell格式化输出
                                                下一页
                                                Shell变量
                                                MIT Licensed
                                                Copyright © 2022 karin