Search code examples
powershellautoit

Comparing last Modified from 2 Files


i'm trying to do an IF function that compare last modified date from 2 files.

Something like this.

#include <Date.au3>
#include <MsgBoxConstants.au3>

$FileTime1 = FileGetTime("C:folder\file1.exe", 0, 1)
$FileTime2 = FileGetTime("C:\folder\file2.exe", 0, 1)

If $FileTime1=$FileTime2 Then
    MsgBox(0, "TITLE", "EQUAL", 10)
Else
    MsgBox(0, "TITLE", "DIFFERENT", 10)
EndIf

Solution

  • This will give you the logic you are after. However, the $FileTime variables will show as Friday, 14 December 2018 12:29:46 PM, so they will be different if they are 1 second different in LastWriteTime

    $FileTime1 = (Get-Item 'C:folder\file1.exe').LastWriteTime
    $FileTime2 = (Get-Item 'C:folder\file2.exe').LastWriteTime
    
    if($FileTime1 -eq $FileTime2) {
        Write-Host "Equal"
    } Else {
        Write-Host "Different"
    }
    

    If you are trying to compare two files to see if they are the same, I recommend Get-FileHash

    $FileHash1 = (Get-FileHash 'C:folder\file1.exe').Hash
    $FileHash2 = (Get-FileHash 'C:folder\file2.exe').Hash
    
    if($FileHash1 -eq $FileHash2) {
        Write-Host "Equal"
    } Else {
        Write-Host "Different"
    }