Я хочу смотреть папки для новых файлов и выводить каждый файл в один .csv - PullRequest
0 голосов
/ 15 января 2019

сегодня я столкнулся с проблемой на работе. Один из наших клиентов хотел добавить столбец csv, в котором говорится, что часть обработанных файлов выполнена правильно или с ошибкой.

После некоторого мозгового штурма я пришел к выводу, что он не будет работать с нашими программами и имеющимися у нас параметрами.

Мое новое решение состояло в том, чтобы проверить определенную папку, в которой находятся файлы, которые встречаются с ошибкой. Я написал файл ps1 для проверки папки и ее подпапок (FileSystemWatcher), но он только проверяет и создает файл csv для корневой папки. Не подпапки. Вот мой код, может быть, кто-нибудь может мне помочь, если я скажу что-то неясное, пожалуйста, попросите его.

Спасибо

$folder = 'C:\Users\Test\Desktop\temp\REPOSITORY_DIRECTORY_FAILURE_OR_DUPLICATES\LVD'
$filter = '*.*'     
$fsw = New-Object IO.FileSystemWatcher $folder -Property @{
IncludeSubdirectories = $true                                                                                   
NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite, DirectoryName'                                                           }
$onCreated = Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated1 -Action{                                                                                                              
    $path = $Event.SourceEventArgs.FullPath                                                                     
    $name = $Event.SourceEventArgs.Name                                                                         
    $timeStamp = $Event.TimeGenerated                                                                           
    Add-Content -Path C:\Users\Test\Desktop\temp\$name.csv -Value '"Zeichnung";"Abkantpresse";"Programmname";"Anzahl_Biegungen";"Anzahl_Toolsetups";"Biegezeit";"Zeiteinheit";"Ruestzeit";"Zeiteinheit";"Handling Zeit";"Zeiteinheit";"Material";"Materialstaerke";"Materialstaerkeeinheit";"Abwicklung_Laenge";"Laengeneinheit";"Abwicklung_Breite";"Breiteneinheit";"Gewicht";"Gewichtseinheit";"Stempelname";"Anzahl_Stempelteile";"Stempelhoehe";"Stempellaenge";"Stempelradius";"Matrizenname";"Anzahl_Matrizenteile";"Matrizenhoehe";"Matrizenlaenge";"Matrizen_V_Weite";"Fehler"'

    $error = @(
        '"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"";"error"' 
    )

    $error  |   foreach { Add-Content -Path C:\Users\Test\Desktop\temp\$name.csv -Value $_}                     
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...