给定两个数字,月份和年份,我如何计算这个月的第一天和最后一天?我的目标是输出这三行:
我正在寻找一种使用GNU date或BSD date (在OS上)的解决方案。
发布于 2012-07-17 09:56:52
老实说,从你问问题的方式看,我觉得你被分配了一些家庭作业,所以我会在答案之外留下几步,作为读者的练习:
您将需要仔细查看date手册页面,特别是-d标志,它允许您检查给定的任何一天。Y月份的第一天是"M/01/Y“。
在这个月的最后一天,你最好的选择是把你得到的月数加1,然后在日期的某一天扣除。
提示:date实际上可以接受一些广泛的算术;例如,我可以说是date -d "01/07/2012 + 1 month - 1 day",它会给我正确的答案。
通过研究date手册中的"format“部分,您可以了解如何在2)和3)中显示所需的输出。
提示:看看%a和%d
发布于 2012-11-01 08:27:20
date -d "20121101 + 1 month - 1 day" +%Y%m%dhttps://unix.stackexchange.com/questions/43264
复制相似问题