Linux 使用:
date -d "2 weeks ago" +%b
Solaris 中的哪个相当于?,我在网上搜索过,但没有找到。
答案1
Solarisdate
无法做到这一点。 AFAICT 来自手册页,它甚至无法显示任意日期,因此您不能只获取自纪元以来的秒数日期,减去 2 周(14 * 86400 = 1209600 秒),然后将其赋予date +%b
.
如果可以的话,安装 GNU date。如果您有 root 权限,则可以在 /usr/local/gnu/bin 下或类似的目录下(顺便说一句,包含 GNU 日期的 GNU Coreutils 可以为 Solaris 预先打包)这里),如果没有则在 ~/bin 中。
如果您无法安装 GNU date,那么您的下一个最佳选择是编写一个包装器strftime()
来执行上述计算,或者用 perl 或 python 编写一个 5 行代码,这两种语言都有出色的日期处理库。
答案2
只是做gdate
而不是date
.这将为您提供 GNU 日期,而不是传统的 Solaris 日期命令。除非您使用的是非常旧的 Solaris 版本(即 Solaris 10 或更早版本),否则这将起作用。
请注意,如果您位于本地区域,那么您的 sysadm 可能已为您决定gdate
不可用,尽管事实上它在全局区域中默认可用。在这种情况下,去告诉他他是......(这里用你自己的话)。
了解更多信息: