我从程序日志中查找开始时间和结束时间字符串。我怎样才能找到小时的时差?
t1="Tue Feb 21 12:15:00 HKT 2023"
t2="Tue Feb 21 12:45:01 HKT 2023"
我看了看其他问题。但它们要么有不同的格式,要么直接从日期开始,比如date -d 'now + 3 weeks'
答案1
像这样:
#!/bin/bash
export TZ='Asia/Hong_Kong'
oldd=$(date -d "Tue Feb 21 12:15:00 HKT 2023" "+%s")
last=$(date -d "Tue Feb 21 12:45:01 HKT 2023" "+%s")
diff=$((last - oldd))
echo "$((diff/3600 )) hours $(( (diff/60)%60 )) minutes $(( diff%60 )) seconds"
输出
0 hours 30 minutes 1 seconds