Переименование папки с проверкой
Добавлено: Вс июл 26, 2009 15:37
Приветствую всех знатоков WSH 
Суть задачи такова:
Есть 2 папки вида "11" и "12". Надо выбрать одну из них и переименовать ее в "1". Предварительно проверив: (например выбрали 11 -> 1) - какая из них ранее была уже переименована, и если именно 11, то ничего не делать, а приступить к запуску файла RUN. Если была переименована не 11, а 12, то 1 переименовываем обратно в 12, а 11 -> 1. Страхуемся так сказать. Словами написать, чтобы было понятно, не так просто
, ниже приводится код батников, сразу разберетесь
В батнике я делал так: сначала проверял на существование файл-флага, создаваемого при переименовании, например как только переименовали 11 -> 1, создается файлик 11.flg, и если он существует, просто запускается RUN. Если нет, тоесть каталог 1 (в данном случае) это - переименованный ранее каталог 12, то я переименовывал 1 -> 12 и потом 11 -> 1.
Вот примерно так это выглядело:
Выбор осуществлялся батником вида:
Батник 11.bat:
Соответственно имелся второй аналогичный батник для 12. Можно и обойтись конечно все-в-одном батнике, но деталей за давностью не помню уже, почему я их разбивал...
Набиваю код тут по памяти, могу ошибиться в деталях
Но суть такова.
Внимание, знатоки вопрос
Выручайте, для меня WSH темный лес
Как подобное организовать в WSH?
...И если не затруднит, то не для 2 папок, а для N? Почему-то подозреваю, что для N>2 несколько по другому будет.
Суть задачи такова:
Есть 2 папки вида "11" и "12". Надо выбрать одну из них и переименовать ее в "1". Предварительно проверив: (например выбрали 11 -> 1) - какая из них ранее была уже переименована, и если именно 11, то ничего не делать, а приступить к запуску файла RUN. Если была переименована не 11, а 12, то 1 переименовываем обратно в 12, а 11 -> 1. Страхуемся так сказать. Словами написать, чтобы было понятно, не так просто
В батнике я делал так: сначала проверял на существование файл-флага, создаваемого при переименовании, например как только переименовали 11 -> 1, создается файлик 11.flg, и если он существует, просто запускается RUN. Если нет, тоесть каталог 1 (в данном случае) это - переименованный ранее каталог 12, то я переименовывал 1 -> 12 и потом 11 -> 1.
Вот примерно так это выглядело:
Выбор осуществлялся батником вида:
Код: Выделить всё
@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
Код: Выделить всё
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Набиваю код тут по памяти, могу ошибиться в деталях
Внимание, знатоки вопрос
Как подобное организовать в WSH?
...И если не затруднит, то не для 2 папок, а для N? Почему-то подозреваю, что для N>2 несколько по другому будет.