4

如何将 KornShell (ksh) 脚本中的日期格式化为 DD-MON-YYYY?

我尝试了以下方法:

date '+%d-%h-%Y'

它返回2009 年 11 月 4 日,我需要将 11 月设为 NOV(全部大写)。这可以用 date 实用程序来完成吗?

4

3 回答 3

5

^字符在 GNU coreutils 中强制大写date(至少在 coreutils 的 6.9.92.4 版本中是这样):

$ date '+%d-%^h-%Y'
04-NOV-2009

不幸的是,^这不是POSIX 标准,因此如果您不在 GNU 系统上date,您可能不得不求助于第二个命令,例如tr@martin Clayton 建议的命令。

于 2009-11-04T23:02:05.613 回答
5

这就是最终在 unix(solaris) 上起作用的方法。

date '+%d-%h-%Y' | tr [:lower:] [:upper:]

返回:2009 年 11 月 4 日

于 2009-11-04T23:20:37.790 回答
2

如果您的环境不支持插入符号大写,您可以自己将其大写:

date '+%d-%h-%Y' | tr 'a-z' 'A-Z'
于 2009-11-04T23:01:01.153 回答