Обновление : Вау, это ужасно устарело (хотя это неизбежно). Powershell определенно становится все более и более популярным языком для автоматизации в Windows. Он обладает многими преимуществами любого языка .net (например, C #) в сочетании со значительной целесообразностью, существующей в любом хорошем языке оболочки, без серьезных недостатков пакетных файлов.
Что стоит, самые популярные варианты, которые я видел в одной крупной компании по разработке программного обеспечения на базе Редмонда (в грубом порядке популярности):
- Пакетные файлы
- Perl
- Windows Scripting Host (Javascript)
- Крошечные бывшие
Гораздо менее популярный:
Обратите внимание, что Perl не требует установки, ему требуется только несколько обновлений переменных среды, поэтому просто вставить весь дистрибутив в систему управления версиями вместе с другими инструментами.
Мое личное предпочтение состояло бы в том, чтобы как можно больше избегать пакетных файлов, даже при самых тщательных и строгих процессах выигрыш в стоимости просто не стоит. У вас никогда не будет удовлетворительного решения, если вы используете партию. Perl и Javascript заманчивы в использовании, но есть серьезные проблемные недостатки, которые оставляют желать лучшего, без строгих рекомендаций по разработке эти методы, скорее всего, приведут к низкому качеству кода.
Python и Powershell - хорошие кандидаты, но я недостаточно разбираюсь в них, и, что более важно, многие люди не настолько знакомы с ними. Возможно, это не достаточно хорошее оправдание. Крошечные exe-файлы также могут иметь много проблем и требуют дисциплины и процесса, чтобы гарантировать, что источник всегда проверяется, что exe-файлы соответствуют определенным нормам пользовательского интерфейса (например, они имеют полезную помощь, если вы запускаете -? Или /?), Что у них есть очевидный владелец, что процесс обновления exes обнаружим и т. д.