Копирование файлов в каталог с "умным" переименованием
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Автоматизация Total Commander

#1: Копирование файлов в каталог с "умным" переименованием Author: Mite PostPosted: Mon Oct 26, 2009 18:15
    —
Подскажите, как с помощью скрипта vbs реализовать следующую задачу.
Имеем:
1) каталог-источник с файлами вида DSCxxxxx.JPG (фотоснимки на флешке мобильного телефона);
2) целевой каталог, куда файлы копируютс после переименования по шаблону [=shelldetails.Модель камеры]_[=shelldetails.Untitled 2.Y-M-D h-m-s];
Хотелось бы автоматизировать процесс таким образом:
1) если в каталоге-получателе файла с подобным именем нет, то он просто копируется;
2) если файл с подобным именем уже есть, то сравниваются контрольные суммы и если они равны, то файл не копируется;
3) если контрольные суммы не равны, то файл копируется с автоматическим переименованием (как это реализовано в диалоге копирования Total Commander - дописыванием номера в скобках, начиная с (2) и т.д.)

Сам могу допереть по примеру готовых скриптов, но поджимает время... Sad
Искал в ветке, нашел подобное, но не совсем то... если плохо искал - извиняюсь!

#2:  Author: Samwatas PostPosted: Mon Oct 26, 2009 19:10
    —
Критично сделать это именно на vbs?
Дело в том, что на vbs нельзя получить значения из контентных плагов ([=shelldetails.Модель камеры]), во всяком случае без сторонних утилит. Подобную задачу можно решить на АвтоИте, но у меня свободного времени особо и нету (тем более если тебя время поджимает - тут я пас). Но можешь попробовать сделать сам.

#3:  Author: Mite PostPosted: Mon Oct 26, 2009 19:45
    —
В принципе некритично.
Меня даже вполне устраивает вариант из двух этапов:
1) ручное копирование в промежуточный каталог с переименованием по данному шаблону;
2) и копирование со сравнением (уже переименованных файлов) из промежуточного каталога в целевой каталог.
Мне интересна автоматизация именно второго этапа.
А vbs интересует потому, что у меня уже есть опыт написания (и достаточно сложных, на мой взгляд Smile ) bat-файлов и хотелось бы, разобрав конкретный пример, перейти на уровень выше...
P.S. Я тут параллельно сам разбираю примеры скриптов от Batya, и если у меня получится рабочий скрипт - выложу в теме.

#4:  Author: Samwatas PostPosted: Mon Oct 26, 2009 21:47
    —
Если хочется именно vbs, то можешь взять мою утилитку wdx.exe отсюда и потренироваться в написании скриптов (единственное - утиль не работает с плагом shelldetails, зато с exif.wdx (колонка "Model") всё нормально получается). Правда с датой и временем такой фокус не пройдёт, так что для получения даты используй стандартные возможности vbs, я думаю он должен это позволять, или можно подождать пока я не напишу нормальнкю утиль вместо wdx.exe, но когда это будет - я не знаю (времени вечно не хватает).

#5:  Author: Mite PostPosted: Mon Oct 26, 2009 21:57
    —
Samwatas, спасибо. Буду пробовать.

#6:  Author: Samwatas PostPosted: Mon Oct 26, 2009 22:10
    —
Тут конечно твое личное дело что учить, но я бы посоветовал вместо vbs изучать AutoIt - у него возможностей побольше, также он позволяет создавать достаточно сложный ГУЙ, как для простового скриптового языка. Кроме того, написанные скрипты можно компилировать в EXE и запускать на любой машине. В общем, рекомендую.



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group