shell脚本(4)-格式化输入

一、read命令

1、概念:

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

2、read命令选项

-p:打印信息

-t:限定时间

-s:不回显

-n:输入字符个数

3、举例说明

(1)模拟登录

复制代码
[root@localhost test20210724]# vi read_command_study.sh

#!usr/bin/bash
clear
echo -n -e "Login: "
read acc
echo -n -e "Password: "
read pw
echo "account:$acc password:$pw"
复制代码

查看运行结果:

[root@localhost test20210724]# sh read_command_study.sh 
Login: root
Password: 123
account:root password:123

(2)优化:read -s  #不显示密码

复制代码
[root@localhost test20210724]# vi read_command_study.sh 

#!usr/bin/bash
clear
echo -n -e "Login: "
read acc
echo -n -e "Password: "
read -s pw
echo echo
"account:$acc password:$pw"
复制代码

查看运行结果:

[root@localhost test20210724]# sh read_command_study.sh 
Login: root
Password: 
account:root password:123

(3)优化:read -t5 #增加5秒超时,5秒不输入退出

复制代码
[root@localhost test20210724]# vi read_command_study.sh 

#!usr/bin/bash
clear
echo -n -e "Login: "
read acc
echo -n -e "Password: "
read -s -t5  pw
echo
echo "account:$acc password:$pw"
复制代码

查看运行结果:

[root@localhost test20210724]# sh read_command_study.sh 
Login: root
Password: 
account:root password:

(4)优化:read -n6 #密码只识别6位,超过6位自动输出完成

复制代码
[root@localhost test20210724]# vi read_command_study.sh 

#!usr/bin/bash
clear
echo -n -e "Login: "
read acc
echo -n -e "Password: "
read -s -t5 -n6 pw
echo
echo "account:$acc password:$pw"
复制代码

查看运行结果:

[root@localhost test20210724]# sh read_command_study.sh 
Login: root
Password: 
account:root password:123456

(5)优化:read -p "Login: " acc #read并且打印输出

复制代码
[root@localhost test20210724]# vi read_command_study.sh 

#!usr/bin/bash
clear
read -p "Login: " acc
read -s -t5 -n6 -p "Password: " pw
echo
echo "account:$acc password:$pw"
复制代码

查看运行结果:

[root@localhost test20210724]# sh read_command_study.sh 
Login: root
Password: 
account:root password:123

 

posted @   Mrwhite86  阅读(389)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示