SHELL脚本攻略(学习笔记)

时间:2021-02-20 15:37:12

要与Linux交互,脚本获取键盘输入的结果是必不可少的,read可以读取键盘输入的字符。

1. 限制输入字符

例如,输入了5个字符后就结束,将输入的5个字符存入变量。换句话说,依靠输入的字符数来作为结束标志。

read -n num var:将输入的num个字符存入变量var。

[root@xuexi tmp]# read -n 5 var 

12345[root@xuexi tmp]# echo $var   ç输入123455个字符

12345

2. 不回显输入的字符

比如输入密码的时候,不回显输入的密码。

read -s var:将输入的字符存入var。输入完后按回车结束。

[root@xuexi tmp]# read -s var   ç这里输入987654

[root@xuexi tmp]# echo $var 

987654

3. 给出输入提示

使用-p选项。

[root@xuexi tmp]# read -p "Please input your name:" var

Please input your name:myname

[root@xuexi tmp]# echo $var

myname

4. 给出输入时间限制

在几秒内没输入就自动结束,或者输入了一部分到限制时间了自动结束,没完成的输入初始化变量,即丢弃结果并让变量称为未赋值状态。

[root@xuexi tmp]# read -t 5 -p  "Please input your name in three seconds:" var

5. 给出结束定界符

输入定界符前的字符被存入变量。

[root@xuexi tmp]# read -d "," var

jinse,[root@xuexi tmp]# echo $var

jinse