现在我正在使用以下命令来获取视频时长的输出
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 -sexagesimal 'video file.mp4'
结果是0:33:29.410000
我需要用以下内容更改此结果
- 前面必须有一个额外的 0 0:33:29.410000
- 秒数必须四舍五入。最终输出应为00:33:29
答案1
使用awk
:
awk -F: '{printf "%02d:%02d:%02d\n",$1,$2,$3}'
或者如果您想在转换之前检查格式以防止出现错误:
awk -F: '/^[0-9]+:[0-9]+:[0-9]+/ {printf "%02d:%02d:%02d\n",$1,$2,$3}'
$ ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 -sexagesimal 'video file.mp4' | awk -F: '{printf "%02d:%02d:%02d\n",$1,$2,$3}'
00:33:29