据我所知,bash 变量没有特定的类型。
我的问题是,我需要将时间戳(始终采用格式:)转换为hh:mm:ss表示秒的单个整数。
因此,我将hh,mm和ss部分切成单独的字符串并用于expr计算秒整数,例如:
TIME=expr $HH \* 3600 + $MM \* 60 + $SS
Run Code Online (Sandbox Code Playgroud)
但是当 eg $HH=00then expr 将不起作用。是否有可能将字符串转换像00或01为整数?
试试awk。例如:
echo "00:20:40" | awk -F: '{ print ($1 * 3600) + ($2 * 60) + $3 }'
Run Code Online (Sandbox Code Playgroud)
所以,如果你有:
time="00:20:40"
Run Code Online (Sandbox Code Playgroud)
然后:
seconds=$(echo $time | awk -F: '{ print ($1 * 3600) + ($2 * 60) + $3 }')
Run Code Online (Sandbox Code Playgroud)
和echo $seconds将打印1240。
| 归档时间: |
|
| 查看次数: |
16894 次 |
| 最近记录: |