Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Копирование файлов в каталог с "умным" переименованием

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Mite



Joined: 26 Oct 2009
Posts: 10

Post (Separately) Posted: Mon Oct 26, 2009 18:15    Post subject: Копирование файлов в каталог с "умным" переименованием Reply with quote

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

Сам могу допереть по примеру готовых скриптов, но поджимает время... Sad
Искал в ветке, нашел подобное, но не совсем то... если плохо искал - извиняюсь!
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Mon Oct 26, 2009 19:10    Post subject: Reply with quote

Критично сделать это именно на vbs?
Дело в том, что на vbs нельзя получить значения из контентных плагов ([=shelldetails.Модель камеры]), во всяком случае без сторонних утилит. Подобную задачу можно решить на АвтоИте, но у меня свободного времени особо и нету (тем более если тебя время поджимает - тут я пас). Но можешь попробовать сделать сам.
Back to top
View user's profile Send private message
Mite



Joined: 26 Oct 2009
Posts: 10

Post (Separately) Posted: Mon Oct 26, 2009 19:45    Post subject: Reply with quote

В принципе некритично.
Меня даже вполне устраивает вариант из двух этапов:
1) ручное копирование в промежуточный каталог с переименованием по данному шаблону;
2) и копирование со сравнением (уже переименованных файлов) из промежуточного каталога в целевой каталог.
Мне интересна автоматизация именно второго этапа.
А vbs интересует потому, что у меня уже есть опыт написания (и достаточно сложных, на мой взгляд Smile ) bat-файлов и хотелось бы, разобрав конкретный пример, перейти на уровень выше...
P.S. Я тут параллельно сам разбираю примеры скриптов от Batya, и если у меня получится рабочий скрипт - выложу в теме.
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Mon Oct 26, 2009 21:47    Post subject: Reply with quote

Если хочется именно vbs, то можешь взять мою утилитку wdx.exe отсюда и потренироваться в написании скриптов (единственное - утиль не работает с плагом shelldetails, зато с exif.wdx (колонка "Model") всё нормально получается). Правда с датой и временем такой фокус не пройдёт, так что для получения даты используй стандартные возможности vbs, я думаю он должен это позволять, или можно подождать пока я не напишу нормальнкю утиль вместо wdx.exe, но когда это будет - я не знаю (времени вечно не хватает).
Back to top
View user's profile Send private message
Mite



Joined: 26 Oct 2009
Posts: 10

Post (Separately) Posted: Mon Oct 26, 2009 21:57    Post subject: Reply with quote

Samwatas, спасибо. Буду пробовать.
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Mon Oct 26, 2009 22:10    Post subject: Reply with quote

Тут конечно твое личное дело что учить, но я бы посоветовал вместо vbs изучать AutoIt - у него возможностей побольше, также он позволяет создавать достаточно сложный ГУЙ, как для простового скриптового языка. Кроме того, написанные скрипты можно компилировать в EXE и запускать на любой машине. В общем, рекомендую.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group