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

Aie*_*Dot 4 unix shell ksh date

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

我尝试过以下方法:

date '+%d-%h-%Y'
Run Code Online (Sandbox Code Playgroud)

它返回2009年11月4日我需要11月成为NOV(全部上限).可以使用日期工具完成吗?

Mar*_*off 5

^角色强制GNU coreutils中的大写date(至少,它在coreutils的版本6.9.92.4中):

$ date '+%d-%^h-%Y'
04-NOV-2009
Run Code Online (Sandbox Code Playgroud)

不幸的是,^是不是POSIX标准date,所以你可能不得不求助于第二个命令,如tr通过@马丁克莱顿建议,如果你不是一个GNU系统上.


Aie*_*Dot 5

这是最终在unix(solaris)上工作的东西.

date '+%d-%h-%Y' | tr [:lower:] [:upper:]
Run Code Online (Sandbox Code Playgroud)

返回:04-NOV-2009