首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash脚本接受有效数字格式的变量

Bash脚本接受有效数字格式的变量
EN

Stack Overflow用户
提问于 2018-05-24 12:03:49
回答 2查看 68关注 0票数 0

我想问一下,是否有一种方法来验证所传递的变量是以这种样例格式"06-10“还是"10-01”。这真的是对我的一个挑战,如何开始和技术,"6-10“代表”6月10日“和"10-01”站为“10月1日”,总的来说,它需要有一个“月-日”的有效的数字格式。我希望有一个if -然后语句来验证所传递的变量是否正确,如下所示:

代码语言:javascript
复制
#!/bin/bash
# This script will ONLY accept two parameters in number format 
# according to "MM-DD" which is "XX-XX" 
# To run this script: ./script.sh xx-xx xx-xx
DATE1=$1
DATE2=$2
if [DATE1 is in correct format] && [DATE2 is in correct format]
 then
  echo "Correct format"
  echo "DATE1 = $DATE1"
  echo "DATE2 = $DATE2"
 else
  echo "Not correct format"
   exit 1
fi
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-24 12:10:26

如果语句如下所示:

代码语言:javascript
复制
if [[ $DATE1 =~ ^[0-9]{1,2}-[0-9]{1,2}$ ]] && [[ $DATE2 =~ ^[0-9]{1,2}-[0-9]{1,2}$ ]]

它检查日期是否具有字符串格式##-##

票数 0
EN

Stack Overflow用户

发布于 2018-05-24 14:47:53

替换if语句上的regex是通过以下操作完成的:

代码语言:javascript
复制
^(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50508944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档