找到三个相同名称但使用不同应用程序创建的文件

时间:2011-04-23 17:45:19

标签: powershell powershell-v1.0

我正在寻找一种方法来查找三个或更多同名但使用其他应用程序创建的文件。然后,下一步操作将比较所有三个文件,以查看它们是否在同一日期创建,并最终将该日期与当前操作系统日期进行比较。

1 个答案:

答案 0 :(得分:1)

作为部分答案,因为我不确定你的意思是同名......

要查看文件是否在同一日期创建,您只需比较每个参考的CreationTime属性:

# Use Get-Item to retrieve FileInfo for two files
PS C:\> $a = Get-Item 'a.txt'
PS C:\> $b = Get-Item 'b.txt'
# Compare the DateTime field when they were created
PS C:\> $a.CreationDate -eq $b.CreationDate
False
# Compare just the 'Date' aspect of each file ignoring the time
PS C:\> $a.CreationDate.Date -eq $b.CreationDate.Date
True

你会注意到创建日期包含一个时间元素,所以除非它们真的完全相同,否则你可能得不到预期的结果。要删除时间元素,只需将.Date属性添加到任何DateTime字段。

要与操作系统日期和时间进行比较:

# store the OS Date and Time for easier reference
PS C:\> $now = [DateTime]::Now
PS C:\> $today = [DateTime]::Today
# Compare using the stored values
PS C:\> $a.CreationDate.Date -eq $now
False
PS C:\> $a.CreationDate.Date -eq $today
True