bash4.2引入了printf内置的新格式说明符。不带参数的情况下,它将以给定的格式显示当前时间。
# Default is the current time
$ printf "%()T\n"
8:30
# Current year
$ printf "%(%Y)T\n"
2015
Run Code Online (Sandbox Code Playgroud)
整数参数被视为自1970年1月1日以来的秒数。
$ printf "%(%Y-%m-%d)T\n" 1234567890
2009-02-13
Run Code Online (Sandbox Code Playgroud)
相同的作品在(的某些版本中)ksh,bash大概是从中借用的。