mac osx date命令

最近要写一个日志的rotate策略,初步计划是用shell搞一个cron任务跑一跑。

rotate策略就涉及到时间,比如说要获取当前时间的前一天,在linux上可以使用命令:

YESTERDAY=$(date -d "1 day ago" +"%Y%m%d")
echo $YESTERDAY

## output
20190411

我开发用mbp,但是server上跑的是类centos的发行版,使用上述的脚本命令,并不能在我的mac上测试。

这是因为OSX和Linux使用两套不同的工具。 Linux使用GNU版本的date命令,而OSX是BSD系的。

为了编写的脚本在服务器上能跑,我的想法是在mac上装一个gnu版的date。好在这个想法并不难实现:

brew install coreutils

默认会使用gdate命令表示gnu-date,可以做一个date命令的重定向或者alias覆盖mac上的date命令。

参考

http://www.jibing57.com/2017/08/03/date-command-on-Linux-and-Mac/

https://stackoverflow.com/questions/1401482/yyyy-mm-dd-format-date-in-shell-script

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容