Я спросил у сакуры, Где та гейша, которая разбила мне сердце. Сакура не ответила. И это хорошо. В нашем роду и так полно психов, Которые говорят с деревьями и травой. http://www.bash.org.ru
Желание организовать собранный материал в статью появилось после некоторых исследований работы bat-скриптов и накопления опыта по их составлению в проекте под Microsoft Visual Sudio 2005, интенсивно использующего промежуточные bat-скрипты для взаимодействия непосредственно с некоторыми сторонними консольными утилитами, участвующими в сборке.
В каждом разделе статьи будет рассматриваться та или иная проблема, будет оговорены её последствия или приведено наилучшее, по мнению автора, решение. Проведённые изыскания можно рассматривать отдельно, но крайне желательно это делать в том порядке, в котором они встречаются в статье, т.к. многие проблемы связаны друг с другом и что-то в дальнейшем может быть непонятно из-за пропущенных деталей.
Статья предусматривает, что читатель уже знаком с написанием bat-скриптов NT (далее просто скриптов), знает о применении команд и умеет пользоваться справкой по встроенным командам и прилагаемым утилитам командного процессора. В статье не рассматриваются сторонние утилиты, а также их проблемы и особенности работы.
ПРИМЕЧАНИЕ Некоторые проблемы, найденные в скриптах, могут быть связаны с их использованием (запуском) из проекта для Microsoft Visual Studio 2005 (C++), а также, возможно, и других сред, использующих обращения к bat-скриптам. |
В конце статьи приведены тексты bat-скриптов и ссылки на некоторые консольные утилиты, использовавшиеся при тестировании примеров.
Всё что здесь проверялось, а оно проверялось мной полностью только на одной системе, проверялось обычным образом, т.е. выводы о работе строились в основном на результатах выполнения тест-скриптов, их текст и приводятся в качестве аргументов к каждому пункту проблемы.
ПРЕДУПРЕЖДЕНИЕ Здесь и далее все bat-скрипты тестировались в основном только под Windows XP Service Pack 2 (Build 2600.xpsp_sp2_gdr.070227-2254 : Service Pack 2). Возможно, это справедливо и для системы без сервис паков или с предыдущими сервис паками, но это особым образом не проверялось. Статья не претендует на полный охват всех особенностей командного процессора, могут быть неточности в связи с уже установленными так называемыми фиксами от Microsoft или недосмотром самого автора. Всё сказанное в статье справедливо для так называемого расширенного режима cmd.exe (установлена переменная CMDEXTVERSION). |
Чтобы детально ознакомиться с возможностями той или иной bat-команды, достаточно в командной строке окна консоли набрать help <имя команды> или <имя команды> /?. К примеру, help set или echo /?. Чтобы ознакомиться со списком поддерживаемых команд, нужно набрать просто help. Кроме того, вы можете ознакомиться со встроенным текстом справки Windows, набрав в окне консоли или в какой-либо командной оболочке "%windir%\help\ntcmds.chm", либо открыть Help Windows и найти тот же текст справки по ключевому тексту “Command-line reference”. |