【问题标题】:Include the hour in the filename for a log file在日志文件的文件名中包含小时
【发布时间】:2012-11-27 18:28:37
【问题描述】:

我有一个 ksh 脚本,我在其中创建了一个 logFileName,如下所示:

logFileName=result_`date +%y%m%d_%k%M%S`.log

这会在大多数情况下生成正确的文件名,如下所示:

result_121127_121010.log

但是,在午夜,它会产生以下文件名:

result_121127_ 01010.log

关于如何解决此问题的想法?基本上,我正在寻找除%k 之外的其他内容,以使用 ksh 中的 date 命令查找小时。

【问题讨论】:

    标签: solaris ksh


    【解决方案1】:

    将 %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
    

    【讨论】:

    • 谢谢!由于某种原因,我在网上找不到 H,我也很感谢 Y 的建议。
    猜你喜欢
    • 2019-04-11
    • 2014-11-17
    • 2019-02-16
    • 2012-02-06
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    • 2010-09-16
    • 2011-03-06
    相关资源
    最近更新 更多