处理用户输入
2019-04-12 本文已影响0人
食梦狸猫
命令行参数
命令行参数在运行脚本时添加数据
./admin 10 30
1是第一个参数......每个参数都是用空格分隔,在使用参数前一定要进行检查。$#表示命令行参数个数
抓取所有数据
$*会将命令行上提供的所有参数当作一个整体保存
$@会将命令行上所有参数当作同一个字符串的多个独立个体处理,可以用for得到每个参数
移动变量
shift命令会把每个参数变量向左移动一个位置,2,0不变。
获得用户输入
- 基本的读取
read从标准输入里或一个文件描述符读取输入
read var
如果在read命令行中不指定变量,read就会将数据放入特殊变量REPLY中。-p选项允许在read命令行指定提示符。-t选项允许指定一个计时器,当时间达到会返回一个非0退出状态。-s选项允许隐藏方式读取。
从文件读取
cat filename | read line
每次调用read命令,都读取一行文本。没有内容时,退出返回状态码