Récemment, j'ai connecté mon FTP à Sharefile. Sharfile crée un fichier .syncdb dans mes dossiers ftp. J'ai un code qui vérifie mon dossier FTP pour les nouveaux fichiers créés, les copie dans un nouveau dossier et envoie des e-mails de notification que les fichiers sont arrivés. Parfois, je reçois des e-mails pour les fichiers .syncdb-wal et syncdb-shm. Cela ne crée pas réellement le fichier à copier, mais il crée un email de notification et crée un dossier vide qui est une nuisance. J'essaie de ne pas inclure ces fichiers avec un filtre mais cela ne semble pas fonctionner. Je ne suis pas sûr si vous pouvez déclarer plus d'une extension pour le filtre. Voici le code ci-dessous que j'essaie d'utiliser pour filtrer les fichiers afin de ne pas inclure les fichiers avec les extensions .syncdb-wal et syncdb-shm, il me manque probablement quelque chose de facile.Filtrer pour ne pas inclure plusieurs extensions
$MonitorFolder = Get-Content "C:\Users\RickG\Desktop\ScanFTPDeptClients\Pathlist.txt"
$filter ='*.syncdb-wal, *.syncdb-shm '
foreach ($path in $MonitorFolder){
$watcher = New-Object System.IO.FileSystemWatcher $path, -ne $filter
#Files only. Default is files + directory
$watcher.NotifyFilter = [System.IO.NotifyFilters]'FileName,LastWrite'
}
Ce n'est pas un filtre valide. Les filtres sont pour le fournisseur de système de fichiers, qui n'autorise qu'un seul filtre inclusif. Cela signifie que vous pouvez seulement dire ce qu'il faut inclure dans les résultats, pas ce qu'il faut exclure, et vous ne pouvez définir qu'un seul filtre, pas plusieurs. Donc '* .txt' est bien d'inclure seulement les fichiers .txt, mais vous ne pouvez pas faire' * .txt, * .docx'. – TheMadTechnician