我有一个字符串,该字符串的日期的长值存储在一个变量中,例如dt =“ 20190501131050”,想要将其转换为dat以从该值中减去15分钟以成为20190501125550
我尝试使用(date -d)强制转换为日期,但日期无效错误
dt="20190501131050"
dt2=$(date -d "$dt" +'%Y%m%d%H%M%S')
答案 0 :(得分:0)
尝试一下:
#!/bin/sh
dt="20190501131050"
dt=$(echo "$dt" | sed "s/\(....\)\(..\)\(..\)\(..\)\(..\)\(..\)/15 minutes ago \1-\2-\3 \4:\5:\6/")
date -d "$dt" +"%Y%m%d%H%M%S"
说明
将日期分解为单个元素,将它们安排在有效日期,然后减去15分钟。
输出
20190501125550