Перемещение и переименование файлов с использованием VBScript - PullRequest
0 голосов
/ 07 июня 2011

Как выяснилось, меня теперь просят изменить скрипт, чтобы он доставлял каждый соответствующий файл в свою собственную папку. Все файлы будут находиться в одной папке на AS400 и будут перемещаться в разные папки на отдельном компьютере. Мой вопрос, могу ли я получить что-то вроде:

Dim fso,f,strPathBuild

Set fso=CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("Z:\SOURCE")

For Each file In f.Files

if left(UCase(file.Name),1) = "A" then strPathBuild = Replace(file, "Z:\SOURCE", "Y:\DESTINATION1")

if left(UCase(file.Name),1) = "A" then strPathBuild = Replace(strPathBuild,"A","ACKNOWLEDGE")

if left(UCase(file.Name),1) = "S" then strPathBuild = Replace(file, "Z:\SOURCE", "Y:\DESTINATION2")

if left(UCase(file.Name),1) = "S" then strPathBuild = Replace(strPathBuild,"S","SHIPMENT")

fso.MoveFile file, strPathBuild

Next

Set f = Nothing
Set fso = Nothing

Я прошу прощения, но, похоже, премьер-министр любит воздерживаться от предоставления мне всех требований сразу.

Ответы [ 2 ]

1 голос
/ 07 июня 2011

В ответ на ваш закомментированный вопрос:

Dim fso,f,strPathBuild

Set fso=CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("Z:\SOURCE")

For Each file In f.Files

strPathBuild = Replace(file, "Z:\SOURCE", "Y:\DESTINATION")

if left(UCase(file.Name),1) = "A" then strPathBuild = Replace(strPathBuild,"ACK","ACKNOWLEDGE")

fso.MoveFile file, strPathBuild

Next

Set f = Nothing
Set fso = Nothing

Также, как говорит Алекс К, вы хотите начать следить за чувствительностью к регистру имен ваших файлов.(Вот почему я включил функцию UCase)

0 голосов
/ 07 июня 2011

Случай пути в перечислении, вероятно, не соответствует критерию поиска Replace.

Заменить без учета регистра (с запуском на символ 1, заменить 1 раз);

strPathBuild = Replace(file, "Z:\SOURCE", "Y:\DESTINATION", 1, 1, vbTextCompare)

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