Rootop 服务器运维与web架构

关于shell中read命令接收多个参数

比如需求为:用 read 接收输入的两个参数,做为用户名和密码,用一句实现。

实现方法:

#!/bin/bash
stty erase ^h
read -p "请输入用户名密码,空格隔开: " username password
echo $username
echo $password

运行结果:

 

 

 

把第一个输入赋值给 username 变量,空格后面的输入赋值给 password 变量。

如果在输入内容时,输入错误,用退格键删除时,会显示^H,删不掉错误的内容,如图:

 

 

解决方法就是在脚本顶部上加
stty erase ^h  这行代码(上面脚本已经加了,演示图中的脚本没加),就可以实现退格删除,另一种方法就是按着 ctrl+退格 删除。

原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/3591.html

作者:Venus

服务器运维与性能优化

评论已关闭。