如何比较两个 DateTime 字符串并返回小时数差?(bash shell)
- 2024-10-24 08:50:00
- admin 原创
- 200
问题描述:
我可以使用以下代码在 php 中做到这一点:
$dt1 = '2011-11-11 11:11:11';
$t1 = strtotime($dt1);
$dt2 = date('Y-m-d H:00:00');
$t2 = strtotime($dt2);
$tDiff = $t2 - $t1;
$hDiff = round($tDiff/3600);
$hDiff
几小时后就能给我结果。
如何在 bash shell 中实现上述操作?
解决方案 1:
您可以使用date
命令来实现这一点。man date
将为您提供更多详细信息。bash 脚本可以是以下这些行(似乎在 Ubuntu 10.04 bash 4.1.5 上运行良好):
#!/bin/bash
# Date 1
dt1="2011-11-11 11:11:11"
# Compute the seconds since epoch for date 1
t1=$(date --date="$dt1" +%s)
# Date 2 : Current date
dt2=$(date +%Y-%m-%d %H:%M:%S)
# Compute the seconds since epoch for date 2
t2=$(date --date="$dt2" +%s)
# Compute the difference in dates in seconds
let "tDiff=$t2-$t1"
# Compute the approximate hour difference
let "hDiff=$tDiff/3600"
echo "Approx hour diff b/w $dt1 & $dt2 = $hDiff"
希望这有帮助!
相关推荐
热门文章
项目管理软件有哪些?
热门标签
曾咪二维码
扫码咨询,免费领取项目管理大礼包!
云禅道AD