Powershell - 包括导出中的日期计算
Powershell - including date calulation in export
团队 -- 试图扩展我的 powershell 脚本,该脚本扫描共享驱动器以包括捕获文件老化信息(参见下面的代码)。我尝试使用 TimeSpan 函数,但它 returns 为空白值。
我试图简化脚本并使用 Get-Date -- 但它也 returns 没有值,而所有其他数据元素都包含信息。
我还尝试创建一个变量 $DT = Get-Date 并将其包括在内......但它也 returns 空白。
如有任何帮助,我们将不胜感激。
$target_files = Get-ChildItem \ [source path] \* -recurse -include "*"
$target_files | select-object -Property @{n='Length in MB';e={[math]::Round(($_.Length / 1MB),2)}}, DirectoryName, name, CreationTime, LastWriteTime, New-TimeSpan Get-Date - LastWriteTime |
Export-csv \ [destination path] \directoryfiles_Inventory.csv -NoTypeInformation
Import-Csv \ [destination path] \directoryfiles_Inventory.csv
我猜您正在寻找 now
和 lastWriteTime
日期之间的时差。如果是这种情况,您可以这样做:
$properties = @(
@{
Name = 'Length in MB'
Expression = {[math]::Round(($_.Length / 1MB),2)}
}
'DirectoryName'
'Name'
'CreationTime'
'LastWriteTime'
@{
Name = 'Time Difference'
Expression = {
([datetime]::Now - $_.LastWriteTime).TotalHours.ToString('#.# Hours')
}
}
)
Get-ChildItem . | Select-Object $properties | Export-Csv "C:\destination\path\export.csv" -NoTypeInformation
每个项目看起来像这样:
Length in MB : 0.04
DirectoryName : C:\Users\example.user
Name : test.txt
CreationTime : 4/27/2021 10:12:57 AM
LastWriteTime : 4/27/2021 10:12:57 AM
Time Difference : 391.8 Hours
团队 -- 试图扩展我的 powershell 脚本,该脚本扫描共享驱动器以包括捕获文件老化信息(参见下面的代码)。我尝试使用 TimeSpan 函数,但它 returns 为空白值。
我试图简化脚本并使用 Get-Date -- 但它也 returns 没有值,而所有其他数据元素都包含信息。
我还尝试创建一个变量 $DT = Get-Date 并将其包括在内......但它也 returns 空白。
如有任何帮助,我们将不胜感激。
$target_files = Get-ChildItem \ [source path] \* -recurse -include "*"
$target_files | select-object -Property @{n='Length in MB';e={[math]::Round(($_.Length / 1MB),2)}}, DirectoryName, name, CreationTime, LastWriteTime, New-TimeSpan Get-Date - LastWriteTime |
Export-csv \ [destination path] \directoryfiles_Inventory.csv -NoTypeInformation
Import-Csv \ [destination path] \directoryfiles_Inventory.csv
我猜您正在寻找 now
和 lastWriteTime
日期之间的时差。如果是这种情况,您可以这样做:
$properties = @(
@{
Name = 'Length in MB'
Expression = {[math]::Round(($_.Length / 1MB),2)}
}
'DirectoryName'
'Name'
'CreationTime'
'LastWriteTime'
@{
Name = 'Time Difference'
Expression = {
([datetime]::Now - $_.LastWriteTime).TotalHours.ToString('#.# Hours')
}
}
)
Get-ChildItem . | Select-Object $properties | Export-Csv "C:\destination\path\export.csv" -NoTypeInformation
每个项目看起来像这样:
Length in MB : 0.04
DirectoryName : C:\Users\example.user
Name : test.txt
CreationTime : 4/27/2021 10:12:57 AM
LastWriteTime : 4/27/2021 10:12:57 AM
Time Difference : 391.8 Hours