我想查看文件夹中是否有新文件,并在单个.csv文件中输出每个文件

时间:2019-01-15 13:22:36

标签: powershell windows-10 scheduled-tasks

今天,我在工作中遇到问题。 我们的一位客户想要添加一个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 $_}                     
}

0 个答案:

没有答案