【问题标题】:Trying to get the year out of a date with sed [duplicate]试图用 sed 使年份超出日期 [重复]
【发布时间】:2017-09-04 09:13:09
【问题描述】:

我正在使用以下命令通过 sed 从字符串中获取年份。

echo 1234-1-12 | sed -r 's/(\d{4})-\d{1,2}-\d{1,2}/\1/'

但不知何故,它返回整个日期而不是年份。

获取1234-1-12

期待1234

任何想法为什么它不起作用?

【问题讨论】:

    标签: sed substitution


    【解决方案1】:

    使用date 命令:

    string="1234-1-12"
    date -d "${string}" +%Y
    

    输出:

    1234
    

    【讨论】:

      【解决方案2】:

      简单的grep方法:

      echo "1234-1-12" | grep -o '^[^-]*'
      

      输出:

      1234
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-05-06
        • 1970-01-01
        • 2015-06-20
        • 2017-01-27
        • 1970-01-01
        • 2018-04-05
        • 1970-01-01
        相关资源
        最近更新 更多