|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение файлов по списку |
|
|
CMD/BAT - Перемещение файлов по списку
|
|
Пользователь Сообщения: 72 |
Есть список файлов filelist.txt (с абсолютными путями), надо переместить файлы которые в списке в другую папку с сохранением структуры папок.
Например: из папки scr переместить файлы в dst filelist.txt c:\src\1.jpg ---> d:\dst\1.jpg c:\src\sdf.jpg ---> d:\dst\sdf.jpg c:\src\YYY\sdsdf.txt ---> d:\dst\YYY\sdsdf.txt |
|
|
Отправлено: 10:06, 25-10-2011 |
|
Ветеран Сообщения: 2735
|
Профиль | Отправить PM | Цитировать |
|
------- Последний раз редактировалось megaloman, 25-10-2011 в 17:19. Отправлено: 13:20, 25-10-2011 | #2 |
|
Ветеран Сообщения: 2735
|
Профиль | Отправить PM | Цитировать Вот идея того, как избежать повторного запуска именно конкретного батника, при этом иметь возможность запускать любой другой батник с таким же контролем повторного запуска - на время работы создаём вспомогательный файл и после нормальной отработки его удаляем. При принудительном завершении батника этот файл придётся удалить вручную.
@Echo Off
cls
If Exist "%0.log" (
Echo *****************************************
Echo Предыдущий запуск батника- смотри файл:
Echo %0.log
Echo нормально не завершен
Echo *****************************************
Pause
GoTo :Eof
)
Echo %Date% %Time% >"%0.log"
FOR /F "usebackq delims=" %%f IN ("D:\Delete\filelist.txt") DO Call :MoveFile "%%~f"
Del "%0.log"
GoTo :Eof
|
|
------- Отправлено: 11:25, 26-10-2011 | #3 |
|
Пользователь Сообщения: 72
|
Профиль | Отправить PM | Цитировать megaloman, Твой вариант гораздо лучше, чем просто блокирование CMD.EXE
|
|
Отправлено: 10:14, 27-10-2011 | #4 |
|
Пользователь Сообщения: 72
|
Профиль | Отправить PM | Цитировать Ситуация такая: если после создания списка файлов в пупке s:\tor-s\OK появился новый файл, то нужно повторно перезапустить батник (или его часть, например с метки :Begine)
@Echo On
cls
If Not Exist t: GoTo :Eof
If Exist "%0.log" (
Echo *****************************************
Echo Предыдущий запуск батника- смотри файл:
Echo %0.log
Echo нормально не завершен
Echo *****************************************
GoTo :Eof
)
Echo %Date% %Time% >"%0.log"
chcp 1251
md T:\ss\1
rem :Begine
rem копирование исход в приход с созданием списка скопированных файлов
c:\nnbackup\nnbackup.exe copy -i "s:\tor-s\OK" -o "t:\SS\1" -s -v -list s:\tor-s\OK.txt -fp
FOR /F "usebackq delims=" %%f IN ("s:\tor-s\OK.txt") DO Call :MoveFile "%%~f"
:MoveFile
Set Out="%~dp1"
Set Out=%Out:"s:\tor-s\OK\="s:\films\%
Set Out=%Out:\"="%
Md %Out% >nul 1>nul 2>nul
Move %1 %Out%
Del "%0.log"
rem Удаление пустых папок
:again
for /f "tokens=*" %%i in (' dir /b /s /ad "s:\tor-s\OK" ') do 2>nul rd /q "%%i" && goto:again
GoTo :Eof
megaloman предложил: Как вариант Но куда его ставить?? В конце батника, он не отрабатывается. |
|
|
Отправлено: 20:43, 04-12-2011 | #5 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| Подскажите программу downloader для скачивания по списку (список - 10000 файлов) | Demdot | Хочу все знать | 2 | 11-06-2011 23:11 | |
| Прочие БД - Извлечение файлов по списку | Aviator | Программирование и базы данных | 1 | 22-02-2011 02:44 | |
| CMD/BAT - [решено] перемещение каталогов по списку | neprotiv | Скриптовые языки администрирования Windows | 4 | 02-03-2010 09:39 | |
| [решено] Замена файлов по списку | Endy1 | Программирование в *nix | 9 | 15-02-2010 13:50 | |
| Перемещение по списку в Excel | Evita | Хочу все знать | 3 | 16-03-2006 01:13 | |
|