2018/03/08
2019独角兽企业重金招聘Python工程师标准>>>
March 08 2018 Thursday
Weather:cloudy
1、需求:
用shell脚本判断输入的日期是否合法。就是判断日期是都是真实的日期,比如20170110就是合法日期,20171332就不合法。
[root@Dasoncheng sbin]# cat a.sh
#!/bin/bash
if [ "$#" -ne 1 ] || [ "${#1}" -ne 8 ];
thenecho "Usage:bash $0 yyyymmdd"exit 1
fi
aa=$1
ay=${aa:0:4}
am=${aa:4:2}
ad=${aa:6:2}if `echo $ad | grep -q "^0"`;
thenad=`echo $ad |sed 's/^0//g'`
fiif `cal "$am" "$ay" &>/dev/null`;
thenif `cal "$am" "$ay" | grep -wq "$ad"`;thenecho "It is ok!"elseecho "Error: Please input a right date !"fi
elseecho "Error: Please input a right date of month and year !"
fi
answer referred
#!/bin/bash
#check date
if [ $# -ne 1 ] || [ ${#1} -ne 8 ]
thenecho "Usage: bash $0 yyyymmdd"exit 1
fi
datem=$1
year=${datem:0:4}
month=${datem:4:2}
day=${datem:6:2}
if echo $day|grep -q '^0'
thenday=`echo $day |sed 's/^0//'`
fi
if cal $month $year >/dev/null 2>/dev/null
thendaym=`cal $month $year|egrep -v "$year|Su"|grep -w "$day"`if [ "$daym" != "" ]thenecho okelseecho "Error: Please input a wright date."exit 1fi
elseecho "Error: Please input a wright date."exit 1
fi
转载于:https://my.oschina.net/u/3651233/blog/1631450
2018/03/08相关推荐
- 2018.03.18 临汾市游记
2018.03.18 临汾市游记 写在前面 首先,Capella 极其擅长记流水账,包括本文. 其次,本文中所有并列关系的人名,均按字典序排列. 背景 临汾一中 Mr_Wolfram 和 poorpo ...
- 始于2015年11月23日,终于2018年08月08日
留念. 2015年11月23日:在一起 2016年01月17日-21日:北京机场,我们❤ 2016年04月16日:去他所在城市--成都 2016年06月04-06日:第一次小旅游--都江堰.青城山 2 ...
- http://www.cnblogs.com/amboyna/archive/2008/03/08/1096024.html
http://www.cnblogs.com/amboyna/archive/2008/03/08/1096024.html
- 2018年08月19日发烧诸事记
2018年08月19日发烧诸事记 关于发烧给敲响的警钟 八月十六日,中午突然觉的有发烧症状,会宿舍喝了些水便回去了,下午上课时情况愈加严重,浑身发冷,无法正常训练,三点多时便去永康街上的社区医疗服务中 ...
- 2018.12.08【NOIP提高组】模拟B组总结(未完成)
2018.12.08[NOIP提高组]模拟B组总结 diyiti 保留道路 进化序列 B diyiti Description 给定n 根直的木棍,要从中选出6 根木棍,满足:能用这6 根木棍拼出一个 ...
- falkon在哪个Linux目录,KaOS 2018.03切换到Falkon浏览器,使用KDE Plasma 5.12 LTS
KaOS Linux操作系统的开发人员今天宣布,2018年3月的ISO快照可以使用了,采用最新的组件和最新的GNU/Linux技术. KaOS 2018.03现在可供下载,它是第一个使用最近发布的KD ...
- 2018.03.03、android-照虎画猫搭建简易Rest服务器
一.前言 对于android开发人员经常需要一个测试的接口来进行网络请求的测试,每次都需要自己上网查找合适的接口.对于开发者来说太浪费自己的宝贵时间了.基于此 一直想做一个属于自己管控服务器. 二.搭 ...
- 开源大数据周刊-2018年08月10日 第96期
资讯 阿里云E-MapReduce新版工作流管理正式上线 新版E-MapReduce工作流管理功能正式发布上线,工作流调度和编排是大数据开发的重要场景.此次升级新增作业DAG执行,作业临时查询等功能, ...
- 2018/03/25
2019独角兽企业重金招聘Python工程师标准>>> March 25 2018 Sunday Weather:cloudy 1.需求: a=0.5 b=3 c=a*b 求c的值: ...
最新文章
- GitHub开源的AI下五子棋(基于博弈树极大极小值alpha-beta剪枝搜索)
- 码龄超过20年,依然对生活和编程充满激情,这是三位70后“老”程序员的故事
- android 截长图 方法,Android实现截屏与截长图功能
- 25个创意的交互式图表设计欣赏
- 设计几个简单的汇编函数
- The current branch is not configured for pull N...
- Hive和hdfs的关系与区别
- hadoop 2.6 伪分布式的安装
- android远程桌面源码,ARDC Android远程桌面助手 简介(示例代码)
- 我是一个线程(转载自: IBM刘欣)
- 零基础学UI设计难吗?
- 在php中如何实现cookie即时生效,不用刷新就可以使用 1
- pc端js获取当前经纬度_js获取用户当前地理位置(省、市、经纬度)
- 用keil编写C语言流水灯程序,简述关于Keil、STM32 用C++编写流水灯程序
- Android 图片文字识别DEMO(基于百度OCR)
- 英特尔或退出芯片制造业务,拥抱台积电
- VMware如何克隆一个虚拟机
- 伯努利分布期望,方差推导
- 《Linux C编程从入门到精通》一1.4 Linux的常用命令
- 计算机名称显示word作者,如何让word文档不显示作者名
热门文章
- 【答学员问】有什么经验教训,是你在面试很多次之后才知道的?
- python语言接收信息的内置函数是_Python语言接收信息的内置函数是________________...
- python基础知识(二十一)
- docker系列-运行nginx静态网站
- 微信小程序之canvas画图
- 冠捷显示成功的信息化建设(MES应用案例)
- 开源堡垒机 Jumpserver 1.4.9 发布,数据库支持 ssl
- 硬件学习手册【总目录】
- System Verilog学习笔记—随机化约束的控制
- 设备管理(含补交作业)