我有一个ksh脚本,我正在创建一个logFileName,如下所示:
logFileName=result_`date +%y%m%d_%k%M%S`.log
这会在大多数情况下产生正确的文件名,如下所示:
result_121127_121010.log
然而,在午夜,它会产生以下文件名:
result_121127_ 01010.log
关于如何解决这个问题的想法?基本上,我正在寻找%k
以外的其他东西来在ksh中使用date命令查找小时。
答案 0 :(得分:2)
将%k替换为%H,因为前者不填充小时,0表示单位数小时。
logFileName=result_`date +%y%m%d_%H%M%S`.log
或等效的
logFileName=result_$(date +%y%m%d_%H%M%S).log
请注意,着名的Y2K错误表明最好使用一整年,如:
logFileName=result_$(date +%Y%m%d_%H%M%S).log