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 

Single Post  Topic: Переименование папки с проверкой 
Author Message
_D_V_S_



PostPosted: Sun Jul 26, 2009 15:37    Post subject: Переименование папки с проверкой Reply with quote

Приветствую всех знатоков WSH Wink
Суть задачи такова:

Есть 2 папки вида "11" и "12". Надо выбрать одну из них и переименовать ее в "1". Предварительно проверив: (например выбрали 11 -> 1) - какая из них ранее была уже переименована, и если именно 11, то ничего не делать, а приступить к запуску файла RUN. Если была переименована не 11, а 12, то 1 переименовываем обратно в 12, а 11 -> 1. Страхуемся так сказать. Словами написать, чтобы было понятно, не так просто Smile, ниже приводится код батников, сразу разберетесь Smile

В батнике я делал так: сначала проверял на существование файл-флага, создаваемого при переименовании, например как только переименовали 11 -> 1, создается файлик 11.flg, и если он существует, просто запускается RUN. Если нет, тоесть каталог 1 (в данном случае) это - переименованный ранее каталог 12, то я переименовывал 1 -> 12 и потом 11 -> 1.
Вот примерно так это выглядело:

Выбор осуществлялся батником вида:
Code:
@echo off
cls

:start
cls
echo.   1. 11                                                                                         
echo.   2. 12

choice /c:12 /t:1,60
if errorlevel 2 goto 12.bat
if errorlevel 1 goto 11.bat
goto end

:end


Батник 11.bat:
Code:
if exist 11.flg goto end

:start
del *.flg
if exist 1 ren 1 12
ren 11 1
echo 11>11.flg

:end                       
RUN.bat
exit


Соответственно имелся второй аналогичный батник для 12. Можно и обойтись конечно все-в-одном батнике, но деталей за давностью не помню уже, почему я их разбивал...

Набиваю код тут по памяти, могу ошибиться в деталях Smile Но суть такова.

Внимание, знатоки вопрос Smile Выручайте, для меня WSH темный лес Smile
Как подобное организовать в WSH?
...И если не затруднит, то не для 2 папок, а для N? Почему-то подозреваю, что для N>2 несколько по другому будет.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group