Din*_*yan 8 command-line time scripts date
当我输入命令时,我的系统显示这样的时间 10:42
date +%R。我需要占用总共几分钟的时间。这意味着 642 分钟。是否有任何命令或 shell 脚本以分钟为单位显示总时间?
Syl*_*eau 11
为了只获得一天的总分钟数,我将使用以下命令:
$ date "+%H*60+%M" | bc
Run Code Online (Sandbox Code Playgroud)
例子:
$ date +%R
09:30
$ date "+%H*60+%M" | bc
570
Run Code Online (Sandbox Code Playgroud)
诀窍是格式化date输出以允许bc解释和计算公式。
只是重击:
IFS=: read hour min < <(date +%R)
echo $(( 60 * 10#$hour + 10#$min ))
Run Code Online (Sandbox Code Playgroud)
强制将两个变量都视为以 10 为基数,以避免 shell 因无效八进制数08和09