0

我想最终从 csv 转到 html。我之前做过类似的事情,但需要在数据准备好之前完成一个步骤。我需要获取开始时间,而不是时间,而是经过的分钟。

当我引入数据时,其中一列的格式如下:

mSTART:
2012-08-07 15:58:57.043
2012-08-07 11:00:45.350
2012-08-07 15:54:47.870
2012-08-07 15:44:28.557

我想将该数据操作到一个列中。

Duration:
38 minutes
70 minutes
108 minutes

它会[(now)-(the start time)]在几分钟内。

我当前的 import-csv 行如下所示:

import-csv .\mydata.csv -header mID, mDES, mTYPE, mVAL, mSTART, mEFF, mDT, mDTDES | Select mDES, mSTART, @{Name="DT";Expression={ $_.mDT+" - "+$_.mDTDES}}
4

1 回答 1

1

使用命令行开关将日期列中的文本转换为日期对象get-date

只需从当前时间中减去该结果,即可返回一个时间跨度对象。如果您只想要经过的分钟数,请调用该TotalMinutes对象的属性。

import-csv .\mydata.csv -header mID, mDES, mTYPE, mVAL, mSTART, mEFF, mDT, mDTDES | 
    Select mDES, mSTART, @{Name="DT";Expression={ $_.mDT+" - "+$_.mDTDES}, @{Name="Duration";Expression={ ((get-date) - (get-date $_.mStart)).TotalMinutes} }
于 2012-08-09T22:20:43.470 回答