Передача файлов из одной папки в другую - PullRequest
0 голосов
/ 10 июня 2019

Мне было интересно, если кто-нибудь может помочь мне с этой проблемой, перемещения файлов с диска C: на сетевой диск.

Итак, на работе у нас есть машина, которая выводит .txt файлы. Например, эти файлы содержат данные о домашних животных, поэтому в папке у меня есть сотни файлов, имена которых похожи на dogs_123456_10062019.txt, а затем cats_123457_10062019.txt.

Теперь первое число - это ссылочный номер, а не число изменений в .txt файле, который создается, а другое - дата, как сказано, у меня может быть сотни таких в день, ссылка и дата не важны для передачи, так как В любом случае файл содержит всю эту информацию

Теперь у меня есть структура сетевых папок Y:dogs & Y:cats, и мне нужен автоматический скрипт, который переносит все текстовые файлы dog & cat на соответствующий сетевой диск.

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

Возможно ли это? Надеюсь, я объяснил себе

Приветствия

1 Ответ

0 голосов
/ 10 июня 2019

Если имена папок совпадают с именами файлов, вы можете сделать что-то вроде этого:

$SourceFolderPath = "C:\Source\"  
$DestinationFolderPath = "Y:"  
$FileList = Get-ChildItem -Path $SourceFolderPath  

foreach($File in $FileList){  
    $FolderName = ($File.Name | Select-String -Pattern ".+?(?=_)").Matches.Value 
    $File | Move-Item -Destination "$DestinationFolderPath\$FolderName"  
}

Если имена папок не совпадают с именами файлов, вам нужно будет вручную создать словарь того, куда следует идти, а затем перевести эти

Приведенный выше код явно не относится к уровню предприятия:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...