$userName = $env:USERNAME # Définir le chemin d'accès relatif des fichiers CSV #$indexcsv = ".\index.csv" #$auteurcsv = ".\auteur.csv" $diffusioncsv = "C:\Users\$userName\Desktop\LOG et SCAM\diffusion.csv" #$diffusionps1 = ".\diffusion et certificat.ps1" #$diffusioncsvps1 = ".\Diffusion_csv.ps1" $logFile = "C:\Users\$userName\Desktop\LOG et SCAM\logs\*.txt" # Affiche le chemin d'accès actuel du script #Write-Host "Chemin d'accès du script : $PSScriptRoot" # Construit les chemins complets des fichiers CSV #$indexcsvFullPath = Join-Path -Path $PSScriptRoot -ChildPath $indexcsv #$auteurcsvFullPath = Join-Path -Path $PSScriptRoot -ChildPath $auteurcsv #$diffusioncsvFullPath = Join-Path -Path $PSScriptRoot -ChildPath $diffusioncsv #$diffusionps1FullPath = Join-Path -Path $PSScriptRoot -ChildPath $diffusionps1 #$diffusioncsvps1FullPath = Join-Path -Path $PSScriptRoot -ChildPath $diffusioncsvps1 #$logfilefullpath = Join-Path -Path $PSScriptRoot -ChildPath $logfile #Créer le fichier diffusion.csv avec les .txt des logs #$logFile = "$logfilefullpath" $outputFile = "$diffusioncsv" # Supprimer le fichier CSV de sortie s'il existe déjà if (Test-Path $outputFile) { Remove-Item $outputFile } $sw = [System.Diagnostics.Stopwatch]::StartNew() $results = Get-Content $logFile | ForEach-Object { $line = $_ if ($line -match "(\d{4})-(\d{2})-(\d{2})\s(\d{2}):(\d{2}):(\d{2}).*CLIP START\s+(.*)") { $date = "{0}/{1}/{2}" -f $Matches[3], $Matches[2], $Matches[1] $time = $Matches[4] + ":" + $Matches[5] + ":" + $Matches[6] $clipName = $Matches[7].Split("(")[0].Trim() "{0};{1};{2}" -f $date, $time, $clipName } } "Date;Time;ClipName" | Out-File -FilePath $outputFile -Encoding default $results | Out-File -FilePath $outputFile -Encoding default -Append $sw.Stop() Write-Host "Execution time: $($sw.Elapsed.TotalSeconds) seconds"