将特定日期格式转换为 linux 中的纪元
Convert specific date format to Epoch in linux
我需要将此日期格式转换为纪元:03/Apr/2016 14:22:59
命令
date -d "03/Apr/2016 14:22:59" +"%s"
将 return :
date: invalid date ‘03/Apr/2016 14:22:59
任何人都可以帮助我将其格式化为 date -d 可识别的格式吗?
提前致谢。
Perl 来拯救:
perl -MTime::Piece -e 'print Time::Piece
->strptime("03/Apr/2016 14:22:59", "%d/%b/%Y %H:%M:%S")
->epoch'
使用Python:
python -c 'from time import strftime, strptime;print strftime("%s", strptime("03/Apr/2016 14:22:59", "%d/%b/%Y %H:%M:%S"))'
可以使用以下命令显示日期输入格式的信息页面:
info date "Date input formats"
很遗憾,date
不支持您的日期格式。但是,您可以将字符串转换为支持的格式,例如:
date -d "$(echo '03/Apr/2016 14:22:59' | tr -s "/" "-")" +"%s"
为了提供有关哪种输入字符串可用于 date
命令的信息,我将在此处写一个简短的摘要:
显示纪元的日期
date -d "@1513936964"
支持今天、明天、月份名称(一月)、AM/PM、时区名称等词
date -d "tomorrow 10:00:30PM"
date -d "03 April 2016 14:22:59"
日历格式
date -d "04/03/2016 14:22:59"
date -d "03-Apr-2016 14:22:59"
date -d "2016-04-03 14:22:59.00"
时区
date -d "PDT now"
去年圣诞节是哪一天?
date -d "$(date -d "2017-12-24") -1 year" +"%A"
我需要将此日期格式转换为纪元:03/Apr/2016 14:22:59 命令
date -d "03/Apr/2016 14:22:59" +"%s"
将 return :
date: invalid date ‘03/Apr/2016 14:22:59
任何人都可以帮助我将其格式化为 date -d 可识别的格式吗? 提前致谢。
Perl 来拯救:
perl -MTime::Piece -e 'print Time::Piece
->strptime("03/Apr/2016 14:22:59", "%d/%b/%Y %H:%M:%S")
->epoch'
使用Python:
python -c 'from time import strftime, strptime;print strftime("%s", strptime("03/Apr/2016 14:22:59", "%d/%b/%Y %H:%M:%S"))'
可以使用以下命令显示日期输入格式的信息页面:
info date "Date input formats"
很遗憾,date
不支持您的日期格式。但是,您可以将字符串转换为支持的格式,例如:
date -d "$(echo '03/Apr/2016 14:22:59' | tr -s "/" "-")" +"%s"
为了提供有关哪种输入字符串可用于 date
命令的信息,我将在此处写一个简短的摘要:
显示纪元的日期
date -d "@1513936964"
支持今天、明天、月份名称(一月)、AM/PM、时区名称等词
date -d "tomorrow 10:00:30PM"
date -d "03 April 2016 14:22:59"
日历格式
date -d "04/03/2016 14:22:59"
date -d "03-Apr-2016 14:22:59"
date -d "2016-04-03 14:22:59.00"
时区
date -d "PDT now"
去年圣诞节是哪一天?
date -d "$(date -d "2017-12-24") -1 year" +"%A"