swa*_*wag 3 regex bash shell date
我试图修改用户输入,如果他们输入不正确的日期格式(YYYY-MM-DD),但我无法弄明白.这是我有的:
while [ "$startDate" != "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" ]
do
echo "Please retype the start date (YYYY-MM-DD):"
read startDate
done
Run Code Online (Sandbox Code Playgroud)
而不是!=,您必须使用! $var =~ regex执行正则表达式比较:
[[ $date =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]
^^
Run Code Online (Sandbox Code Playgroud)
这样你的脚本就像这样:
date=""
while [[ ! $date =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; do
echo "enter date (YYYY-MM-DD)"
read $date
done
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6109 次 |
| 最近记录: |