linux - 我想使用命令打印上个月的最后一个日期,时间戳为“23:59:59”
问题描述
下面是我的输出,但我想得到像Apr 30 23:59:59
. 请建议
date -d "$(date +%Y-%m-01) -1 day"
输出:
Tue Apr 30 00:00:00 UCT 2019
我想要输出:Tue Apr 30 23:59:59 UCT 2019
解决方案
您需要传递另一个 + 格式日期并将时间替换为 23:59:59。像这样的东西:
date -d "$(date +%Y-%m-01) -1 day" +"%a %b %d 23:59:59 %Z %Y"
输出将是:
Tue Apr 30 23:59:59 -03 2019
更新:要使用格式 YYYYMMDD 的上个月的最后一天,只需将最后一个格式字符串更改为'%Y%m%d'
. 这是完整的命令:
date -d "$(date +%Y-%m-01) -1 day" +"%Y%m%d"
这是输出:
20190430
推荐阅读
- spring - authentication.getPrincipal() 始终是 String 而不是 UserDetails
- javascript - 在 JavaScript 中使用递归函数时如何处理 Promise
- spring-boot - 将 Spring Boot oAuth2 应用程序作为资源服务器运行并提供 Web 内容
- django - django-rest 将数据数组保存到数据库
- rest - 如何在单体架构中实现 Rest API
- angular - Angular6长期等待改变
- node.js - 为什么它说我的sql语句不需要参数
- android - 将数据发送到 android 手机,如果有人反编译我的应用程序应该无法获取该数据
- android - 片段过渡没有应有的平滑
- visual-studio-code - VS Code 扩展,如何使大小写不敏感?