Войти

Показать полную графическую версию : [решено] Перенос файлов с разной маской в одну папку


Vertolet
27-03-2012, 04:10
Всем добрый день!
Перерыл весь форум, нигде нет примера скрипта по переносу из одной папки в другую, файлов с разными масками. Примеры как файлы с одной маской переместить есть, а мне нужно с разными (около 30 масок). Подскажите плиз как можно это реализовать. Заранее благодарен.
З.Ы. И ещё, у кого нить есть пример vbs скрипта, который по содержимому файла копирует его определенный каталог? Т.е. если в файле встречается слово "Например" то перенести его в папку "Например", "Например1" в папку "Например1" и т.д.... Спасибо.

Iska
27-03-2012, 05:06
Перерыл весь форум, нигде нет примера скрипта по переносу из одной папки в другую, файлов с разными масками. »
Какие тут могут быть примеры?

Option Explicit

Dim objFSO
Dim strMask

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

With objFSO
For Each strMask In Array("*.txt", "*.exe", "bla-bla-bla*.*")
.MoveFile .BuildPath("c:\Source", strMask), "c:\Destination"
Next
End With

Set objFSO = Nothing

WScript.Quit 0

Надо только учитывать, что если не будет найдено файлов, подходящих под маску — возникнет ошибка времени исполнения. И Вам уже решать, что делать: то ли обрабатывать её, то ли игнорировать.


пример vbs скрипта, который по содержимому файла копирует его определенный каталог? »
Нужно как минимум знать кодировку файла.

если в файле встречается слово "Например" то перенести его в папку "Например", "Например1" в папку "Например1" и т.д.... »
Файл с «Например1» в папку «Например1» не будет перенесён, ибо он уже будет в папке «Например».

Vertolet
27-03-2012, 08:49
Iska, спасибо огромное! Как прописать что бы он игнорировал отсутствие файла?
По поводу "Например" - "Например" и "Например1" это разные файлы, т.е. мне нужно что бы если в файле попалось слово "кот", то файл переместился в папку "коты", если в файле попалось слово "собака", то соответственно в папку "собаки"...кодировка ANSI.

Iska
27-03-2012, 09:36
Как прописать что бы он игнорировал отсутствие файла? »
Напишите, например, так:
On Error Resume Next
.MoveFile .BuildPath("c:\Source", strMask), "c:\Destination"
On Error Goto 0




© OSzone.net 2001-2012