【问题标题】:how to format a date in shell script如何在shell脚本中格式化日期
【发布时间】:2011-11-22 02:26:40
【问题描述】:

如何在 shell 脚本中以“2011-09-01”格式格式化日期“01-SEP-2011”?

【问题讨论】:

    标签: bash shell


    【解决方案1】:

    如果您在目标系统上安装了 Ruby,您可以这样做:

    #/bin/bash
    read DATE # 01-SEP-2011
    set DATE=$(ruby -rdate -e "puts Date.parse('$DATE').to_s")
    echo $DATE # 2011-09-01
    

    【讨论】:

      【解决方案2】:

      试试这个:

      $ date --date='01-SEP-2011' +%Y-%m-%d
      

      【讨论】:

      • 假设您拥有 GNU coreutils 版本的 date 命令。如果你正在运行 bash,你可能会这样做——但它可能不会默认安装在 MacOS 上,例如。 (不知道是否默认安装了bash,但是bash没有非GNU版本;date有非GNU版本。)
      • date ... +%F 也可以(但我认为+%Y-%m-%d 更便携)。
      【解决方案3】:
      kent$  date +%F -d "01-SEP-2011" 
      2011-09-01
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-14
        • 1970-01-01
        • 2010-11-26
        • 1970-01-01
        相关资源
        最近更新 更多