从vivado解析两个日志文件,如何计算以分钟为单位的时间差?
set start_time = "Wed Jun 12 15:12:30 2019"
set end_time = "Thu Jun 13 01:28:39 2019"
在csh中,如何计算start_time - end_time
并将其转换为分钟?
答案 0 :(得分:0)
在具有GNU coreutil的date
的Linux上,您可以使用-d
标志来解析日期,并使用+%s
以秒为单位显示日期:
set start_time = "Wed Jun 12 15:12:30 2019"
set end_time = "Thu Jun 13 01:28:39 2019"
@ diff = `date -d "$start_time" +%s` - `date -d "$end_time" +%s`
echo "Took $diff seconds"
使用@ varname
代替set varname
,您可以执行算术运算。
请注意,-d
标志并非可移植到所有系统,但是Wikipedia告诉我Vivado仅在Windows和Linux上运行,因此我假设您使用的是Linux;-)
如果可以避免的话,我也建议不要将csh
用于此类任务;它缺少功能,良好的重定向,解析器奇怪以及其他一些问题。通常认为Bourne Shell脚本更健壮,就像使用Python或其他“真正的”编程语言一样。