Idée Comparaison contenu deux fichiers et envoie Mail

Plus d'informations
il y a 4 ans 2 mois #29666 par Zeki
Ceci est script qui compare le contenu de deux fichiers:
1- Nouveau fichier que le script télécharge d'un lien web
2- Ancien fichier téléchargé date-1





$url = \"http://LienURL\"
$output = \"Path\NewFiles\File.$(get-date -f yyyyMMdd)\"
$source = \"Path\\"
$start_time = Get-Date
$OldFile = Get-ChildItem -Path $source | sort LastWriteTime
#$SendTo = \"@\"
#$SentFrom = \"@\"
#$Subject = \"Subject\"
#$Smtp = \"SmtpServer\"
#$Port = \"Port\"
#$user = \"Username\"
#$pass = ConvertTo-SecureString -String \"Password\" -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential $user, $pass






#Vérification si le fichier a été téléchargé auparavant le même jour

if (Test-Path -Path \"Path\file.$(get-date -f yyyyMMdd)\")
{

Send-MailMessage -To $SendTo -From $SentFrom -Subject $Subject -Body \"No changes on the file because the file has been already downloaded today\" -Credential $cred -SmtpServer $Smtp -Port $Port

}

Else
{
#Si aucun fichier ne date d'aujourd'hui alors télécharger le fichier à partir du lien web

Invoke-WebRequest -Uri $url -OutFile $output


#Chercher la différence entre le contenu des deux fichier ancien (last modified) et nouveau

$ContNouv = Get-Content -path $output

$ContOld = Get-Content -Path \"$source\$($Oldfile[0])\"


$diffresult = Compare-Object $ContNouv $ContOld | Format-Table @{Label=\"Line Number\";Expression={$_.InputObject.ReadCount}},InputObject | Out-String


if ($diffresult)
{
$diffresult.InputObject
#$diffresult

Send-MailMessage -To $SendTo -From $SentFrom -Subject $Subject -Body $diffresult -Credential $cred -SmtpServer $Smtp -Port $Port



}

else

{

Send-MailMessage -To $SendTo -From $SentFrom -Subject $Subject -Body \"No change on the file\" -Credential $cred -SmtpServer $Smtp -Port $Port
}
#Finalement on déplace le fichier dans le dossier principal pour qu'il soit considéré comme ancien fichier pour demain

Move-Item -Path $output -Destination $source
}


J'espère que cela va aider quelqu'un

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.104 secondes
Propulsé par Kunena