这是一个 Makefile one-liner,它以 16 位十六进制整数形式返回时间戳:
DAY := $(shell date +%u)
HOUR := $(shell date +%H)
MINUTE := $(shell date +%M)
TIMESTAMP := $(shell perl -e 'printf "%04X", ($(USER2)<<14)|($(DAY)<<11)|($(HOUR)<<6)|$(MINUTE)')
这在大多数情况下都有效。但是,如果我现在运行它会date
返回一个小时09
,并且脚本会抱怨:
Illegal octal digit '9' at -e line 1, at end of line
有想法该怎么解决这个吗?谢谢。