例如:,我有一个名副其实的瓷砖:tt =“Thu 09/22/2016 11:03:55 AM”我需要在bash中为这个时间戳添加几秒钟 当前状态:Thu 09/22/2016 11:03:55
请求状态:星期四09/22/2016 11:04:02 + var 在这种情况下,var将是7秒
感谢您的评论。
答案 0 :(得分:3)
您可以使用GNU date
命令将日期字符串解析为纪元秒,然后添加时差,然后再次使用date
将纪元秒转换回人类可读形式。
#!/bin/bash
OLD_TT="Thu 09/22/2016 11:03:55 AM"
OFFSET=7
EPOCH=$( date --date="$OLD_TT" "+%s" )
NEW_EPOCH=$(( $EPOCH + $OFFSET ))
NEW_TT=$( date --date=\@$NEW_EPOCH "+%a %m/%d/%Y %I:%M:%S %p" )
echo "Old Date : $TT"
echo "New Date : $NEW_TT"
<强>输出强>
Old Date : Thu 09/22/2016 11:03:55 AM
New Date : Thu 09/22/2016 11:04:02 AM