DJm00n 16.02.2012 21:53 ноут

Опасайтесь бездумного применения команды cd %~dp0 без проверки результата выполнения. Теоретически, эта команда должна сменить текущий каталог на каталог, в котором расположен командный файл. Как правило, это работает. Однако возможны неожиданности. Однажды был написан простой командный сценарий, задача которого была просто удалить все каталоги рядом с собой. В «свою» директорию он переходил как раз через cd %~dp0. Все было проверено на локальной машине – работало замечательно. После этого сценарий был помещен на файл-сервер, где ему и полагалось быть. Я зашел с помощью Far в сетевой каталог, и для контрольной проверки решил запустить файл еще раз. Дальнейшее словно в тумане. cmd.exe правильно определил местонахождение bat-файла: \\servername\sharename\directory. Однако при попытке сделать туда cd, он сказал, что UNC-пути в качестве текущих каталогов не поддерживаются и лучше он сменит текущий каталог на C:\WINDOWS… Это было действительно мудрое решение… Часть сценария, отвечавшая за удаление всех каталогов, сработала отлично – хорошо, что я успел вовремя остановить это безумие.
В тот день я узнал, что такое System Restore…

Recommended by:

@magog: спермопроблемы

and @asmer
1. Cthulhu 16.02.2012 21:58 Miranda

> файловый сервер
А на следующий день тебе рассказали, что такое бекап? )

2. DJm00nCthulhu /1 16.02.2012 22:00 ноут

БЕКАПЫ НЕ ДЛЯ СУРОВЫХ МУЖИКОВ!
а вообще батники — зло, да

3. magogCthulhu /1 16.02.2012 22:01 Azoth

>сервер
> windows
Мусье знает толк в извращениях

4. DJm00nmagog /3 16.02.2012 22:21

дык, паста же

5. folex 16.02.2012 22:25 Web

> Остановить это безумие
> ...

Триллер.

6. dorfe 16.02.2012 23:11

боян про говноскрипт, ртфм http://www.rsdn.ru/article/winshell/bata... && http://www.rsdn.ru/article/winshell/NTCo... || юзайте более подходящие решения.

Do you really want to delete ?