shell 脚本中  有时候 用read  想提供一个默认值 该怎么写呢?

       read  有一个 选项 -t  就是等待时间, 如果到了时间就不让用户继续输入了, 可以通过 过了默认时间后,提供一个默认值

方法1:

#!/bin/bash

read -t 5 -p "请输入一个数:" num
num=${num:-10}

echo "num=$num"

${var:-DEFAULT}        如果var没有被声明, 或者其值为空, 那么就以$DEFAULT作为其值

如果这里 等待用户输入,5s 以后则 num =10 作为默认值。
或者 直接回车,也会传入一个默认值,num=10



方法2  按回车提供一个默认值

#!/bin/bash

read  -p "请输入一个数:" num

if [ -z "${num}" ];then
	num=10
fi
echo "num is  $num"



非常简单,就是按回车的时候,num 肯定为空, 加上一个if 判断,如果为空就赋值 为默认值,就可以啦。







分享快乐,留住感动。你的点赞,就是对我最大的肯定。                                                                                           ---20170911  23:05       标哥