【问题标题】:How to format argument date in older FreeBSD?如何在旧版 FreeBSD 中格式化参数日期?
【发布时间】:2018-09-07 05:54:41
【问题描述】:

我有一个接收日期作为参数的函数,我需要对其进行格式化,以便它可以在我们学校服务器上较旧的 FreeBSD 上运行。

selected_date=$(date -j $1 +"%Y-%m-%d")

这是我目前所拥有的。有人可以建议我如何更正它以使其正常工作吗?

【问题讨论】:

  • 您在$1 中收到的日期格式是什么(即,请提供示例输入)? date 以这种方式调用时会给您什么错误?你运行的是什么版本的 FreeBSD?升级是一种选择吗?
  • 应该有一个-f 格式来指定$1 期望的格式(应该被引用)。

标签: shell date freebsd


【解决方案1】:

在最近的 FreeBSD 版本中代码没有改变。

  • 确保您的输入参数被引用。
  • 使用选项 -f 指定输入的日期格式
  • 如果您有非数字输入数据,请确保已设置区域设置。

示例,在 FreeBSD 8.4 和 FreeBSD 11.1 上测试:

env LANG=C date -j -f '%b %d %T %Z %Y' 'Dec 24 02:12:21 CET 2016' '+%Y-%m-%d'

【讨论】:

    猜你喜欢
    • 2020-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-20
    • 2011-01-31
    • 2014-04-18
    相关资源
    最近更新 更多