Какие языки сценариев полезны в Windows? [закрытый]

Какие языки сценариев полезны для автоматизации Windows?

48
задан 21.08.2013, 03:57

13 ответов

  1. PowerShell
  2. Windows Scripting Host
    a. VBScript
    b. JScript
  3. Пакетные файлы

PowerShell (v2.0)

С Windows 7 и Сервера 2008 разумно рассмотреть PowerShell, когда он поставлется с Windows, и также существенно администрировать программное обеспечение сервера, такое как Lync и Exchange, поскольку существует полный набор команд availble для них. Существует растущий список доступных функций, посмотрите Центр Сценария деталей.

Windows Scripting Host

Windows Script Host (WSH) является технически хостом сценариев к Механизмам выполнения сценариев ActiveX. VBScript и JScript (реализация Microsoft JavaScript) являются этими двумя механизмами, установленными по умолчанию. Многие другой доступны как открытый исходный код, включая Perl, PHP и Ruby.

VBScript

Используя подобный синтаксис к VB6 и VB.NET, VBScripts испытывают недостаток в легком доступе к классам.NET (Powershell записан на.NET, таким образом, это имеет доступ ко всем функциям.NET). VBScript главным образом использует в своих интересах сервис WMI и объекты, которые он выставляет.

Пример: Это создает Точку восстановления.

Set wmi, whatName, errResults
wmi = GetObject("winmgmts:\\.\root\default:Systemrestore")
whatName = InputBox("Enter a name for the Restore Point",WScript.ScriptName)
errResults = wmi.CreateRestorePoint (whatName, 12, 100)
If errResults <> 0 then
    Wscript.Echo "Error " & errResults & " : Unable to create Restore Point"
End If

JScript

Можно также записать тот же сценарий с помощью ECMAScript:

var wmi = WScript.GetObject("winmgmts:\\.\root\default:Systemrestore");
var whatName = WSHInputBox("Enter a name for the Restore Point",Script.ScriptName);
var errResults = wmi.CreateRestorePoint(whatName, 12, 100);
if(errResults != 0) {
    WScript.Echo("Error "+ err + " : Unable to create Restore Point");
}

Файлы пакета команд

Существует, конечно, старый добрый Пакетный файл. Им не нужно никакое введение.

36
ответ дан 07.12.2019, 08:32
  1. PowerShell
  2. Windows Scripting Host
    a. VBScript
    b. JScript
  3. Пакетные файлы

PowerShell (v2.0)

С Windows 7 и Сервера 2008 разумно рассмотреть PowerShell, когда он поставлется с Windows, и также существенно администрировать программное обеспечение сервера, такое как Lync и Exchange, поскольку существует полный набор команд availble для них. Существует растущий список доступных функций, посмотрите Центр Сценария деталей.

Windows Scripting Host

Windows Script Host (WSH) является технически хостом сценариев к Механизмам выполнения сценариев ActiveX. VBScript и JScript (реализация Microsoft JavaScript) являются этими двумя механизмами, установленными по умолчанию. Многие другой доступны как открытый исходный код, включая Perl, PHP и Ruby.

VBScript

Используя подобный синтаксис к VB6 и VB.NET, VBScripts испытывают недостаток в легком доступе к классам.NET (Powershell записан на.NET, таким образом, это имеет доступ ко всем функциям.NET). VBScript главным образом использует в своих интересах сервис WMI и объекты, которые он выставляет.

Пример: Это создает Точку восстановления.

Set wmi, whatName, errResults
wmi = GetObject("winmgmts:\\.\root\default:Systemrestore")
whatName = InputBox("Enter a name for the Restore Point",WScript.ScriptName)
errResults = wmi.CreateRestorePoint (whatName, 12, 100)
If errResults <> 0 then
    Wscript.Echo "Error " & errResults & " : Unable to create Restore Point"
End If

JScript

Можно также записать тот же сценарий с помощью ECMAScript:

var wmi = WScript.GetObject("winmgmts:\\.\root\default:Systemrestore");
var whatName = WSHInputBox("Enter a name for the Restore Point",Script.ScriptName);
var errResults = wmi.CreateRestorePoint(whatName, 12, 100);
if(errResults != 0) {
    WScript.Echo("Error "+ err + " : Unable to create Restore Point");
}

Файлы пакета команд

Существует, конечно, старый добрый Пакетный файл. Им не нужно никакое введение.

36
ответ дан 07.12.2019, 08:32

Я все еще пишу пакетные файлы DOS, даже в Windows 7. Для большинства задач это все еще работает вполне хорошо, и очень просто работать с (также, многие команды DOS такой, поскольку "ДЛЯ" улучшались со временем и предоставляют больше возможностей и функциональности, которые не были доступны больше чем десятилетие назад).

Для меня пакетный файл DOS является все еще основным языком сценариев для Windows (это, конечно, традиционно), но у всех есть потребности и предпочтения, которые отличаются. Существует много вещей, которые пакетные файлы DOS не могут сделать (языки сценариев могут изложить ограничения также), и для редких случаев, где я встретился с этим, я затем смотрю на то, что мои другие опции (часто, это - Perl, или иногда это могло быть должно записать небольшую программу или целое приложение).

Понимание, что необходимо выполнить, является очень важным шагом в решении который инструменты использовать. Знакомство с инструментами является другим важным аспектом, который может ограничить Ваши опции. При попытке решить, которого сценарии [или программирование] язык для изучения, то, надо надеяться, это будет полезно Вам.

16
ответ дан 07.12.2019, 08:32

Я все еще пишу пакетные файлы DOS, даже в Windows 7. Для большинства задач это все еще работает вполне хорошо, и очень просто работать с (также, многие команды DOS такой, поскольку "ДЛЯ" улучшались со временем и предоставляют больше возможностей и функциональности, которые не были доступны больше чем десятилетие назад).

Для меня пакетный файл DOS является все еще основным языком сценариев для Windows (это, конечно, традиционно), но у всех есть потребности и предпочтения, которые отличаются. Существует много вещей, которые пакетные файлы DOS не могут сделать (языки сценариев могут изложить ограничения также), и для редких случаев, где я встретился с этим, я затем смотрю на то, что мои другие опции (часто, это - Perl, или иногда это могло быть должно записать небольшую программу или целое приложение).

Понимание, что необходимо выполнить, является очень важным шагом в решении который инструменты использовать. Знакомство с инструментами является другим важным аспектом, который может ограничить Ваши опции. При попытке решить, которого сценарии [или программирование] язык для изучения, то, надо надеяться, это будет полезно Вам.

16
ответ дан 07.12.2019, 08:32

Я предполагаю, что официальные сценарии “язык” для Windows были бы (и был начиная с Win95), Windows Script Host.

Технически, WSH не является языком к себе, а скорее средой (не GUI), который выставляет COM-интерфейсы, чтобы позволить Вам, используют любой язык сценариев, который Вы хотите, чтобы сделать вещи ОС, даже вещи, которые не имеют никакого собственного пути, встроенного в язык (например, Ruby не имеет никакого встроенного способа войти в Windows или TCL/TK, не имеют никакого встроенного способа показать диалоговое окно Выполнения).

Вы, возможно, видели некоторые файлы WSF, которые могут включать несколько языков в один файл, но обычно сценарии WSH записаны на одном языке и распределены с расширением, соответствующим версии сценариев того языка (например, VBS для сценариев VisualBasic, PYS для PythonScript, и т.д.)

4
ответ дан 07.12.2019, 08:32

Это зависит от того, кого Вы спрашиваете. Некоторые никогда не будут оставлять пакет, некоторая любовь vbscript некоторая любовь powershell, другие как AutoIt. Затем существуют независимые от платформы как Python и Perl, которым некоторые будут клясться для всего.

10
ответ дан 07.12.2019, 08:32

Я сказал бы, что AutoIt, это обеспечивает очень быстрый и легкий developedment на окнах и очень трудно вместе с ним. Это означает, что в задачах, которые обычно берут скорее много кода в других языках, можно выполнить буквально одна строка в autoit. Функции, такие как прямая компиляция к exe's также очень полезны.

4
ответ дан 07.12.2019, 08:32

Я сказал бы, что AutoIt, это обеспечивает очень быстрый и легкий developedment на окнах и очень трудно вместе с ним. Это означает, что в задачах, которые обычно берут скорее много кода в других языках, можно выполнить буквально одна строка в autoit. Функции, такие как прямая компиляция к exe's также очень полезны.

4
ответ дан 07.12.2019, 08:32

Другие языки, на которые указывают в этом вопросе (VbScript, PowerShell, Пакет), очень популярны и поддерживаются. Если Вы уже знаете язык сценариев и чувствуете себя довольными в - кем-либо, означают, идут с этим.

Если бы Вы собираетесь вложить капитал во взятие нового языка, я предложил бы два языка для Вас, зависит от задания, которое Вы пытаетесь сделать:

JavaScript (через WSH) - использует JavaScript, если Вы хотите использовать различный Объект автоматизации путем инстанцирования их и вызова в их Объектную модель. Можно создать Объект автоматизации для в значительной степени всего от Exchange Server до WMI к документам Office. Существует поддержка отладки с Visual Studio (с/x аргументом). Кроме того, инвестиции в JavaScript окажутся полезными в HTML.

Perl - использует Perl, если Вы можете, чтобы запустить другие программы, управлять их выводом, выполнить регулярное выражение. Хотя кажется, что этот язык в настоящее время находится в снижении, это - все еще очень популярное, очень хорошо поддерживаемое с большим общественным языком. Необходимо также рассмотреть этот язык для общения с другими сервисами (не обязательно Windows), такими как JIRA на предприятии или EC2 на Amazon. Отладка поддерживается в затмении с EPIC, который является также хорошей средой IDE (окраска синтаксиса, и т.д.). Существуют модули в CPAN для всего. Знание Perl окажется полезным, имея необходимость сделать автоматизацию на машинах не для Windows.

2
ответ дан 07.12.2019, 08:32

В первые годы был VBScript, сопровождаемый Пакетом в корпоративной среде с чистым Windows 7 и Сервером 2 008 R2 новый язык сценариев, Powershell повышает большое внимание.

1
ответ дан 07.12.2019, 08:32

В первые годы был VBScript, сопровождаемый Пакетом в корпоративной среде с чистым Windows 7 и Сервером 2 008 R2 новый язык сценариев, Powershell повышает большое внимание.

1
ответ дан 07.12.2019, 08:32

Я второй рекомендация для Perl, если Вы до записи некоторых сценариев Perl. Люди, с которыми я работаю, успешно использовали и рекомендуют (немного старый) Сценарий CLR, и для сценариев веб-взаимодействия, iMacros

1
ответ дан 07.12.2019, 08:32

Это могло быть почти что-либо, завися, что Вы пытаетесь автоматизировать. Это будет варьироваться от пакетных файлов и PowerShell к автогорячей клавише и Селену (если необходимо автоматизировать некоторые связанные с GUI задачи).

Обычно это не проблема для изучения один, если уже необходимо добавить некоторые модификации или поддержку записанные сценарии. Если Вы должны разработать что-то новое - выбирают язык/путь на основе требований, и что Вы уже знаете.

1
ответ дан 07.12.2019, 08:32

Теги

Похожие вопросы