Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Перемещение файлов по маске с сохранением структуры папок... (http://forum.oszone.net/showthread.php?t=250795)

nfs911 07-01-2013 02:21 2060741

Перемещение файлов по маске с сохранением структуры папок...
 
Всем привет.
Мне нужно реализовать перемещение файлов по содержанию в них фразе.Этих фраз 100 штук.С сохранением структуры папок.
Выглядит это так.
Папка "X1" с файлами и подкаталогами с файлами.
И текстовый документ с фразами в таком виде
AS123456
AS234865
AS345733
AS334555
AS324557

Файлы содержанием этих цифр должны переместиться в другую папку с сохранением структуры папок.

Как это реализовать на bat и возможно ли это?

zion87 12-01-2013 21:53 2065323

Ничего не понятно!
Цитата:

Цитата nfs911
перемещение файлов по содержанию в них фразе »

какой фразе?
Цитата:

Цитата nfs911
должны переместиться в другую папку »

в какую?

nfs911 27-01-2013 21:52 2076384

zion87, из примера мы можем увидеть что фраза "AS"
другая папка к примеру c:\folderX\

zion87 27-01-2013 22:37 2076424

Цитата:

Цитата nfs911
И текстовый документ с фразами в таком виде
AS123456
AS234865 »

то есть txt с фразами AS переместить в папку

Цитата:

Цитата nfs911
c:\folderX\ »


nfs911 28-01-2013 05:23 2076582

Чтобы было понятней
файлы называются по разному
всё что их объединяет это AS###### (# - цифры)
вот так еще можно изобразить:
*AS#######*.*
Цитата:

Цитата zion87
то есть txt с фразами AS переместить в папку »

Да.Если делать в ручную то мне надо ввести в поиск AS123456 потом Ctrl+X>Ctrl+V
предварительно создав такую же структуру папок.

gora 28-01-2013 11:35 2076699

Код:

@Echo Off
SetLocal EnableDelayedExpansion
:: Путь к обрабатываемой папке
Set Folder=e:\Temp\_1 1
:: Путь к создаваемой папке
Set OutFolder=e:\Temp\folderX

For /F "tokens=* delims=" %%A In ('Dir /S /B /A:-D "%folder%\AS*.txt"') Do (
        Set dpath=%%~dpA
        Set dpath=!dpath:~0,-1!
        Set dpath=%OutFolder%!dpath:%Folder%=!
        If Not Exist "!dpath!" MD "!dpath!"
        Copy "%%A" "!dpath!\%%~nxA">Nul
)
Pause
Exit


nfs911 15-02-2013 00:08 2090739

gora, а куда прописывать путь к TXT файлу со списком фраз?
Если я правильно понял то ваш скрипт ищет текстовые документы с названием AS*.txt и копирует анолагичные файлы.Надо както с
For /F ............. %%A IN ("%Txt%") Do.....


Время: 21:11.

Время: 21:11.
© OSzone.net 2001-