Скрипты для windows 7: Windows 7.Скрипты автоматизация и командная строка
Содержание
Windows 7.Скрипты автоматизация и командная строка
Поделиться
Книттель Брайан «Windows 7.Скрипты, автоматизация и командная строка» Питер, 2012 год, 778 стр., ISBN: 978-5-459-00656-8; (7,6 мб. djvu + samples)
В книге описаны современные инструменты для рационализации и автоматизации задач управления операционными системами Windows 7 и Windows Vista. Никаких мышек! Только командная строка и ввод с клавиатуры. Известный эксперт по Windows Knittel Brian собрал вместе все необходимые средства автоматизации : VBScript, Windows Scripting Host (WSH), традиционные пакетные файлы, продвинутые команды Microsoft PowerShell. Описанные приемы и методики избавят вас от рутинной,повторяющейся работы. Издание рекомендовано опытным пользователям, системным администраторам и разработчикам программного обеспечения.
Оглавление книги
Содержание
Часть I. Создание сценариев с помощью Windows Script Host
Глава 1. Windows Script Host
Глава 2. Руководство no VBScript
Глава 3. Создание сценариев и работа с объектами
Глава 4. Доступ к файлам и реестру
Глава 5. Сетевые и принтерные объекты
Глава 6. Объекты сообщений и факсов
Глава 7. Инструментарий управления Windows
Глава 8. Active Directory Scripting Interface
Глава 9. Использование сценариев для управления компьютерами и сетями
Часть II. Среда окружения командной строки
Глава 10. Командная строка CMD
Глава 11. Пакетные файлы для пользы и развлечения
Глава 12. Среда окружения MS-DOS при работе под Windows
Глава 13. Утилиты командной строки
Часть III. Введение в Windows PowerShell
Глава 14. Windows PowerShell
Глава 15. Программирование в среде PowerShell
Глава 16. Использование PowerShell
Часть IV. Приложения
Приложение А. Справочник по VBScript
Приложение Б. Справочник по языку CMD и пакетных файлов
Приложение В. Указатель схем и учебных сценариев
Приложение Г. Справочник по программам командной строки
СкачатьDJVU+samples
Похожая литература
993
https://www.htbook.ru/kompjutery_i_seti/operacionnye_sistemy/windows-7-ckripty-avtomatizaciya-i-komandnaya-strokahttps://www.htbook.ru/wp-content/uploads/2019/01/windows-7-ckripty-avtomatizaciya-i-komandnaya-stroka.jpg
https://www.htbook.ru/wp-content/uploads/2019/01/windows-7-ckripty-avtomatizaciya-i-komandnaya-stroka.jpg
Операционные системыWindows,руководствоПрактическое руководство для системных администраторов.
Книттель Брайан ‘Windows 7.Скрипты, автоматизация и командная строка’ Питер, 2012 год, 778 стр., ISBN: 978-5-459-00656-8; (7,6 мб. djvu + samples)
В книге описаны современные инструменты для рационализации и автоматизации задач управления операционными системами Windows 7 и Windows Vista. Никаких мышек! Только командная строка и ввод с. ..Сергей ПупкинСергей
Пупкин[email protected]Техническая литература
Поделиться
Создание и выполнение скриптов — Configuration Manager
-
Статья -
-
Относится к Configuration Manager (Current Branch)
Configuration Manager имеет встроенную возможность запуска сценариев PowerShell. Преимущество PowerShell состоит в создании сложных автоматизированных сценариев, понятных и предоставляемых более широкому сообществу. Скрипты упрощают создание пользовательских инструментов для администрирования программного обеспечения и позволяют быстро выполнять обычные задачи, что упрощает и более согласованное выполнение больших заданий.
Примечание.
В версии 2006 и более ранних Configuration Manager не включает эту необязательную функцию по умолчанию. Перед ее использованием необходимо включить эту функцию. Дополнительные сведения см. в разделе Включение дополнительных функций из обновлений.
Благодаря этой интеграции в Configuration Manager вы можете использовать функцию Запуска скриптов для выполнения следующих действий:
- Создание и изменение скриптов для использования с Configuration Manager.
- Управление использованием скриптов с помощью ролей и областей безопасности.
- Выполнение скриптов на коллекциях или отдельных локальных управляемых компьютерах с Windows.
- Получение быстрых агрегированных результатов скрипта с клиентских устройств.
- Мониторинг выполнения скрипта и просмотр результатов отчетов из выходных данных скрипта.
Предупреждение
- Учитывая возможности скриптов, мы напоминаем вам, что вы должны быть преднамеренными и осторожными с их использованием. Мы встроили дополнительные меры безопасности, чтобы помочь вам; разделенные роли и области. Обязательно проверьте точность скриптов перед их выполнением и убедитесь, что они из надежного источника, чтобы предотвратить непреднамеренное выполнение скриптов. Помните о расширенных символах или другом запутывании и узнайте о защите скриптов. Дополнительные сведения о безопасности сценариев PowerShell
- Некоторые антивредоносные программы могут непреднамеренно активировать события для Configuration Manager запуска скриптов или функций CMPivot. Рекомендуется исключить %windir%\CCM\ScriptStore, чтобы программное обеспечение для защиты от вредоносных программ позволяло выполнять эти функции без вмешательства.
Предварительные требования
- Для запуска сценариев PowerShell на клиенте должна быть запущена оболочка PowerShell версии 3.0 или более поздней. Однако если выполняемый скрипт содержит функциональные возможности из более поздней версии PowerShell, клиент, на котором выполняется скрипт, должен работать с этой версией PowerShell.
- Configuration Manager клиенты должны запускать клиент из выпуска 1706 или более поздней версии, чтобы выполнять скрипты.
- Чтобы использовать сценарии, необходимо быть членом соответствующей роли безопасности Configuration Manager.
- Для импорта и создания скриптов ваша учетная запись должна иметь разрешения на созданиескриптов SMS.
- Чтобы утвердить или отклонить скрипты. Ваша учетная запись должна иметь разрешения на утверждениескриптов SMS.
- Для выполнения скриптов ваша учетная запись должна иметь разрешения на выполнение скрипта для коллекций.
Дополнительные сведения о Configuration Manager ролях безопасности:Области безопасности для сценариев выполненияРоли безопасности для сценариев запускаОсновы ролевого администрирования.
Ограничения
Запуск скриптов в настоящее время поддерживает:
- Языки сценариев: PowerShell
- Типы параметров: целое число, строка и список.
Предупреждение
Имейте в виду, что при использовании параметров открывается поверхность для потенциального риска атаки путем внедрения PowerShell. Существуют различные способы устранения рисков и обхода, например использование регулярных выражений для проверки входных параметров или использование предопределенных параметров. Рекомендуется не включать секреты в скрипты PowerShell (без паролей и т. д.). Дополнительные сведения о безопасности сценариев PowerShell
Запуск авторов и утверждающих скриптов
При выполнении скриптов используется концепция авторов скриптов и утверждающих скриптов в качестве отдельных ролей для реализации и выполнения скрипта. Разделение ролей автора и утверждающего позволяет проверить наличие мощного средства запуска скриптов. Существует дополнительная роль средств выполнения скриптов , которая позволяет выполнять скрипты, но не создавать или утверждать скрипты. См . статью Создание ролей безопасности для сценариев.
Управление ролями скриптов
По умолчанию пользователи не могут утвердить сценарий, который они создали. Так как скрипты являются мощными, универсальными и могут развертываться на многих устройствах, можно разделить роли между человеком, создающим скрипт, и пользователем, утверждающим скрипт. Эти роли предоставляют дополнительный уровень безопасности при выполнении скрипта без надзора. Вы можете отключить вторичное утверждение, чтобы упростить тестирование.
Утверждение или отклонение скрипта
Скрипты должны быть утверждены ролью утверждающего скрипта , прежде чем они могут быть запущены. Чтобы утвердить скрипт, выполните приведенные ниже действия.
- В консоли Configuration Manager щелкните Библиотека программного обеспечения.
- В рабочей области Библиотека программного обеспечения щелкните Скрипты.
- В списке Скрипт выберите сценарий, который требуется утвердить или отклонить, а затем на вкладке Главная в группе Скрипт нажмите кнопку Утвердить или отклонить.
- В диалоговом окне Утверждение или отклонение скрипта выберите Утвердить или Запретить для скрипта. При необходимости введите комментарий о своем решении. Если вы отклоните скрипт, его нельзя будет запустить на клиентских устройствах.
- Завершите работу мастера. В списке Скрипт столбец Состояние утверждения изменится в зависимости от выполняемого действия.
Разрешить пользователям утверждать собственные скрипты
Это утверждение в основном используется на этапе тестирования разработки скрипта.
- В консоли Configuration Manager щелкните Администрирование.
- В рабочей области Администрирование разверните узел Конфигурация сайта, а затем щелкните Сайты.
- В списке сайтов выберите свой сайт, а затем на вкладке Главная в группе Сайты щелкните Параметры иерархии.
- На вкладке Общие диалогового окна Свойства параметров иерархии снимите флажок Авторы скриптов требуют дополнительного утверждающего скрипта.
Важно!
Рекомендуется не разрешать автору скриптов утверждать собственные скрипты. Это должно быть разрешено только в параметре лаборатории. Внимательно изучите возможные последствия изменения этого параметра в рабочей среде.
Области безопасности
При выполнении скриптов используются области безопасности, существующая функция Configuration Manager, для управления написанием и выполнением скриптов путем назначения тегов, представляющих группы пользователей. Дополнительные сведения об использовании областей безопасности см. в статье Настройка администрирования на основе ролей для Configuration Manager.
Создание ролей безопасности для сценариев
Три роли безопасности, используемые для выполнения скриптов, не создаются по умолчанию в Configuration Manager. Чтобы создать средства выполнения скриптов, авторы скриптов и роли утверждающих скриптов, выполните описанные действия.
- В консоли Configuration Manager перейдите в раздел Администрирование>ролей безопасности.>
- Щелкните роль правой кнопкой мыши и выберите команду Копировать. Копируемой роли уже назначены разрешения. Убедитесь, что вы принимаете только нужные разрешения.
- Присвойте настраиваемой роли имя и описание.
- Назначьте роли безопасности разрешения, описанные ниже.
Разрешения ролей безопасности
Имя роли: средства выполнения скриптов
- Описание. Эти разрешения позволяют этой роли выполнять только сценарии, ранее созданные и утвержденные другими ролями.
- Разрешения: Убедитесь, что для следующих элементов задано значение Да.
Category | Разрешение | Состояние |
---|---|---|
Сбор | Запустить сценарий | Да |
Site | Чтение | Да |
Скрипты SMS | Чтение | Да |
Имя роли: авторы скриптов
- Описание. Эти разрешения позволяют этой роли создавать скрипты, но они не могут утверждать или запускать их.
- Разрешения. Убедитесь, что заданы следующие разрешения.
Category | Разрешение | Состояние |
---|---|---|
Сбор | Запустить сценарий | Нет |
Site | Чтение | Да |
Скрипты SMS | Create | Да |
Скрипты SMS | Чтение | Да |
Скрипты SMS | Удалить | Да |
Скрипты SMS | Изменение | Да |
Имя роли: утверждающие скрипты
- Описание. Эти разрешения позволяют этой роли утверждать скрипты, но не могут создавать или запускать их.
- Разрешения: Убедитесь, что заданы следующие разрешения.
Category | Разрешение | Состояние |
---|---|---|
Сбор | Запустить сценарий | Нет |
Site | Чтение | Да |
Скрипты SMS | Чтение | Да |
Скрипты SMS | Утвердить | Да |
Скрипты SMS | Изменение | Да |
Пример разрешений скриптов SMS для роли авторов скриптов
Создание скрипта
- В консоли Configuration Manager щелкните Библиотека программного обеспечения.
- В рабочей области Библиотека программного обеспечения щелкните Скрипты.
- На вкладке Главная в группе Создать щелкните Создать скрипт.
- На странице Скрипт мастера создания скриптов настройте следующие параметры:
- Имя скрипта — введите имя скрипта. Хотя можно создать несколько скриптов с одинаковыми именами, использование повторяющихся имен затрудняет поиск нужного скрипта в консоли Configuration Manager.
- Язык сценариев . В настоящее время поддерживаются только скрипты PowerShell.
- Импорт — импорт скрипта PowerShell в консоль. Скрипт отображается в поле Скрипт .
- Очистить — удаляет текущий скрипт из поля Скрипт.
- Скрипт — отображает импортированный скрипт. Скрипт в этом поле можно изменить при необходимости.
- Завершите работу мастера. Новый скрипт отображается в списке Скрипт с состоянием Ожидание утверждения. Перед запуском этого скрипта на клиентских устройствах необходимо утвердить его.
Важно!
Избегайте создания скриптов перезагрузки устройства или перезапуска агента Configuration Manager при использовании функции запуска скриптов. Это может привести к непрерывной перезагрузке. При необходимости существуют улучшения функции уведомлений клиента, которые позволяют перезапускать устройства. Столбец ожидающего перезапуска поможет определить устройства, которым требуется перезагрузка.
Параметры скрипта
Добавление параметров в скрипт обеспечивает более гибкую работу. Можно включить до 10 параметров. Ниже описана текущая возможность функции запуска скриптов с параметрами скрипта для. Строковые, целочисленные типы данных. Также доступны списки предустановленных значений. Если скрипт имеет неподдерживаемые типы данных, вы получите предупреждение.
В диалоговом окне Создание скрипта щелкните Параметры скрипта в разделе Скрипт.
Каждый из параметров скрипта имеет собственное диалоговое окно для добавления дополнительных сведений и проверки. Если в скрипте есть параметр по умолчанию, он будет перечислен в пользовательском интерфейсе параметра, и его можно задать. Configuration Manager не перезаписывает значение по умолчанию, так как никогда не изменяет скрипт напрямую. Это можно представить как «предварительно заполненные предлагаемые значения» в пользовательском интерфейсе, но Configuration Manager не предоставляет доступ к значениям по умолчанию во время выполнения. Это можно обойти, изменив скрипт, чтобы иметь правильные значения по умолчанию.
Важно!
Значения параметров не могут содержать одну кавычку. Существует известная проблема, из-за которой значения параметров, которые включают или заключаются в одинарные кавычки, не передаются скрипту должным образом. При указании значений параметров по умолчанию, содержащих пробел в скрипте, используйте вместо этого двойные кавычки. При указании значений параметров по умолчанию во время создания или выполнения скрипта окружение значения по умолчанию в двойных или одиночных кавычках не требуется независимо от того, содержит ли значение пробел.
Проверка параметров
Каждый параметр в скрипте имеет диалоговое окно Свойства параметра скрипта , в которое можно добавить проверку для этого параметра. После добавления проверки вы должны получить ошибки, если вы вводите значение для параметра, который не соответствует его проверке.
Пример
: FirstName
В этом примере можно задать свойства строкового параметра FirstName.
Раздел проверки диалогового окна Свойства параметра скрипта содержит следующие поля для использования:
- Минимальная длина — минимальное количество символов поля FirstName . A-Z] его в поле RegEx .
Обработка регулярных выражений для этого диалога поддерживается платформа .NET Framework. Рекомендации по использованию регулярных выражений см. в разделах Регулярные выражения иязык регулярных выражений .NET.
Примеры скриптов
Вот несколько примеров, иллюстрирующих скрипты, которые можно использовать с этой возможностью.
Создание папки и файла
Этот скрипт создает новую папку и файл в папке с учетом входных данных именования.
Param( [Parameter(Mandatory=$True)] [string]$FolderName, [Parameter(Mandatory=$True)] [string]$FileName ) New-Item $FolderName -type directory New-Item $FileName -type file
Получение версии ОС
Этот скрипт использует WMI для запроса к компьютеру версии ОС.
Write-Output (Get-WmiObject -Class Win32_operatingSystem).Caption
Изменение или копирование скриптов PowerShell
Вы можете изменить или скопировать существующий скрипт PowerShell, используемый с функцией запуска скриптов . Вместо того, чтобы воссоздать скрипт, который необходимо изменить, теперь измените его напрямую. Оба действия используют тот же интерфейс мастера, что и при создании нового скрипта. При редактировании или копировании скрипта Configuration Manager не сохраняет состояние утверждения.
Совет
Не редактируйте скрипт, который активно выполняется на клиентах. Они не завершат выполнение исходного сценария, и вы не можете получить предполагаемые результаты от этих клиентов.
Изменение скрипта
- Перейдите в узел Скрипты в рабочей области Библиотека программного обеспечения .
- Выберите скрипт для редактирования, а затем нажмите кнопку Изменить на ленте.
- Измените или повторно вставьте скрипт на странице Сведения о скрипте .
- Нажмите кнопку Далее , чтобы просмотреть сводку , а затем закрыть после завершения редактирования.
Копирование скрипта
- Перейдите в узел Скрипты в рабочей области Библиотека программного обеспечения .
- Выберите скрипт для копирования, а затем нажмите кнопку Копировать на ленте.
- Переименуйте скрипт в поле Имя скрипта и внесите дополнительные изменения, которые могут потребоваться.
- Нажмите кнопку Далее , чтобы просмотреть сводку , а затем закрыть после завершения редактирования.
Запуск сценария
После утверждения скрипта его можно запустить на одном устройстве или в коллекции. После начала выполнения скрипта он быстро запускается через систему с высоким приоритетом, которая истекает в течение одного часа. Затем результаты скрипта возвращаются с помощью системы сообщений о состоянии.
Чтобы выбрать коллекцию целевых объектов для сценария, выполните приведенные ниже действия.
- В консоли Configuration Manager щелкните Активы и соответствие.
- В рабочей области Активы и соответствие щелкните Коллекции устройств.
- В списке Коллекции устройств выберите коллекцию устройств, на которых требуется запустить скрипт.
- Выберите коллекцию по своему усмотрению и нажмите кнопку Запустить скрипт.
- На странице Скрипт мастера выполнения скриптов выберите скрипт из списка. Отображаются только утвержденные скрипты.
- Нажмите кнопку Далее, а затем завершите работу мастера.
Важно!
Если скрипт не выполняется, например из-за отключения целевого устройства в течение одного часа времени, его необходимо запустить еще раз.
Выполнение целевого компьютера
Скрипт выполняется как учетная запись системы или компьютера на целевых клиентах. Эта учетная запись имеет ограниченный сетевой доступ. Любой доступ к удаленным системам и расположениям с помощью скрипта должен быть подготовлен соответствующим образом.
Мониторинг скриптов
После запуска скрипта на коллекции устройств используйте следующую процедуру для мониторинга операции. Вы можете отслеживать скрипт в режиме реального времени по мере его выполнения, а затем вернуться к состоянию и результатам выполнения заданного скрипта выполнения. Данные о состоянии скрипта очищаются в рамках задачи обслуживания Удаления устаревших операций клиента или удаления скрипта.
В консоли Configuration Manager щелкните Мониторинг.
В рабочей области Мониторинг щелкните Состояние скрипта.
В списке Состояние скрипта отображаются результаты для каждого скрипта, запущенного на клиентских устройствах. Код выхода скрипта 0 , как правило, указывает на успешное выполнение скрипта.
Выходные данные скрипта
Вывод возвращаемого скрипта клиента с помощью форматирования JSON путем отправки результатов скрипта в командлет ConvertTo-Json . Формат JSON последовательно возвращает доступные для чтения выходные данные скрипта. Для сценариев, которые не возвращают объекты в качестве выходных данных, командлет ConvertTo-Json преобразует выходные данные в простую строку, возвращаемую клиентом вместо JSON.
Скрипты, которые получают неизвестный результат или где клиент находится в автономном режиме, не будут отображаться на диаграммах или в наборе данных.
Избегайте возврата больших выходных данных скрипта, так как они усечены до 4 КБ.
Преобразуйте объект перечисления в строковое значение в скриптах, чтобы они правильно отображались в формате JSON.
Подробные выходные данные скрипта можно просмотреть в необработанном или структурированном формате JSON. Это форматирование упрощает чтение и анализ выходных данных. Если скрипт возвращает допустимый текст в формате JSON или выходные данные могут быть преобразованы в JSON с помощью командлета PowerShell ConvertTo-Json , то подробные выходные данные отображаются как выходные данные JSON или Необработанные выходные данные. В противном случае единственным вариантом является вывод скрипта.
Пример. Выходные данные скрипта можно преобразовать в допустимый JSON
Команды:
$PSVersionTable.PSVersion
Major Minor Build Revision ----- ----- ----- -------- 5 1 16299 551
Пример. Выходные данные скрипта недопустимый JSON
Команды:
Write-Output (Get-WmiObject -Class Win32_OperatingSystem).Caption
Microsoft Windows 10 Enterprise
Файлы журнала
На клиенте по умолчанию в C:\Windows\CCM\logs:
- Scripts.log
- CcmMessaging.log
В mp по умолчанию в C:\SMS_CCM\Logs:
- MP_RelayMsgMgr.log
На сервере сайта по умолчанию в папке C:\Program Files\Configuration Manager\Logs:
- SMS_Message_Processing_Engine.log
Автоматизация с помощью Windows PowerShell
Для автоматизации некоторых из этих задач можно использовать следующие командлеты PowerShell:
- Approve-CMScript
- Deny-CMScript
- Get-CMScript
- Invoke-CMScript
- New-CMScript
- Remove-CMScript
- Set-CMScript
См.
также
- Настройка администрирования на основе ролей для Configuration Manager
- Основы ролевого администрирования
Создание сценария PowerShell — Учебное пособие по Windows 7
Windows 7 / Начало работы
Разобравшись с основами, пришло время пройтись по созданию некоторых основных сценариев
с помощью интегрированной среды сценариев Windows PowerShell. Изменена политика выполнения, чтобы можно было запускать сценарии.Создание и запуск сценария PowerShell
- Запустите Windows PowerShell ISE.
- Щелкните в верхней области (обозначенной как Untitled1.ps1), введите следующий текст и нажмите Enter:
Get-EventLog -List
Обратите внимание, что команда не выполняется, когда вы нажимаете Enter, а вместо этого запускает строку 2. - Нажмите зеленую кнопку, чтобы запустить сценарий. Вы также можете нажать F5. Вы увидите результат
отображается в средней панели. Если есть синтаксическая ошибка, вы увидите красный текст ошибки
вместо черного текста в качестве вывода.
Если вы видите красное сообщение об ошибке, найдите следующие символы: <<<<. Они часто указывают к конкретной строке текста, которая вызывает проблему. - Щелкните значок Сохранить в меню (или нажмите Ctrl+S). Перейдите в папку с именем C:\
Скрипты (создайте его, если нужно) и измените Untitled на LogInfo, чтобы сохранить скрипт
как C:\Scripts\LogInfo.ps1. - Переместите курсор в нижнюю часть экрана, введите C:\Scripts\LogInfo.ps1 и
нажмите Ввод. Скрипт выполнится. - Измените текущее местоположение на файл сценария с помощью этой команды:
Set-Location C:\Scripts.
- Попробуйте запустить скрипт этой командой (не получится):
LogInfo.ps1
Несмотря на то, что сценарий находится по текущему пути, PowerShell требуется подсказка, чтобы найти его. - Нажмите стрелку вверх и измените последнюю команду, чтобы она выглядела так:
.\LogInfo.ps1
Символы .\ указывают PowerShell, что сценарий находится по текущему пути.
Изменение сценария с использованием цикла ForEach
- Нажмите «Файл» → «Создать», чтобы создать пустую область для работы с новым сценарием.
- Введите следующий текст и нажмите F5, чтобы выполнить его.
служба получения | select-object name, status
Здесь перечислены все службы в системе по именам и их текущему состоянию (например, работающие
или остановлен). - Вместо того, чтобы выводить эти данные на экран, вы можете сохранить их в коллекции. Следующее
Команда сохранит результат в коллекции с именем $colService. Заметить, что
вам не нужно повторно вводить всю команду, вместо этого вы просто добавляете $colService =
в начало строки:$colService = Get-service | выберите объект имя, статус
- Теперь добавьте цикл ForEach для прохода по коллекции. Цикл будет проверять каждую службу
хранится в коллекции, а затем используйте командлет Write-Host для отображения только
службы со статусом, равным «работает».ForEach ($item в $colService) { Если ($item.status -eq "работает") {узел записи $item.name} }
Точно так же вы можете использовать тот же метод для перечисления всех служб, которые останавливаются просто
изменение «работает» на «остановлено» в сценарии.Хотя этот пример показывает, как можно использовать цикл ForEach для циклического прохождения коллекции,
это не единственный способ получить список запущенных сервисов. Как и в большинстве скриптов, есть
более чем один способ получить то, что вам нужно. Например, следующий однострочник также может
использоваться для получения списка запущенных служб:Get-Service | Выберите имя, статус | где {$_.status -eq "работает"}
[Предыдущий]
[Содержание]
[Далее]сообщить об этом объявлении
В этом уроке:
- Работа с командной строкой
- Запуск и завершение сеанса командной строки
- Простые способы вызова сеансов командной строки администратора
- Запуск командной строки в определенной папке
- Строки с пробелами требуют кавычек
9001 0 Cmd. exe против Command.com
- Команды не чувствительны к регистру
- Запуск командной строки и выполнение команды
- Cmd.exe и другие командные строки
- Использование автозапуска для выполнения команд при запуске командной строки
- Использование синтаксиса командной строки Cmds
- Использование команд
- Введите /? для справки
- Запуск программ
- Открытие проводника Windows в текущей папке командной строки
- Использование дополнения имени файла и имени папки
- Использование другого символа завершения
- Использование подстановочных знаков
- Редактирование командной строки
- Использование командных символов
- Символы перенаправления
- Символ канала
- Символы комбинации команд
- Приостановка или отмена команд
- Упрощение ввода команд с помощью макросов Doskey
- DOSKEY Сохранение ввода
- Системные переменные Идентификация среды
- Просмотр переменных среды
- Изменение среды Переменные
- Предопределенные переменные среды
- Настройка командной строки Windows
- Настройка Размер и положение окна
- Визуальная установка размера и положения окна
- Выбор шрифта
- Настройка цветов
- Настройка других параметров
- Копирование и вставка в окно командной строки
- Навигация из командной строки
- Печать списка имен файлов
- Команды Использование путей
- Идентификация исполняемого файла s
- Изменение пути к исполняемым файлам
- Изменение пути с помощью графического интерфейса пользователя
- Изменение текущего пути с помощью компакт-диска
- Изменение текущего пути с помощью проводника Windows
- Запись выходных данных
- Выборка команд
- Dir
- Copy
- XCopy
- SET
- NET USE
- SystemInfo
- DriverQuery 90 011
- Echo
- Расширенные команды оболочки
- Создание пакетного файла
- Планирование пакетного файла
- Создание запланированных задач с помощью сценария
- Использование Windows PowerShell и PowerShell ISE
- Windows PowerShell ISE
- Команды PowerShell
- Глаголы и существительные
- Отправка вывода в текстовый файл
- Синтаксис PowerShell
- Переменные, созданные с помощью символа $
- Операторы сравнения
- Скобки, скобки и фигурные скобки
- Запуск сценариев PowerShell 9001 1
- Политика выполнения PowerShell
- Изменение политики выполнения
- Зацикливание
- Коллекции
- Создание сценария PowerShell
- Документирование сценариев
- Использование команд PowerShell
- Получение справки по PowerShell
- Использование WMI_Cmdlets
- Получение сведений об объекте
- Запрос информации об определенных объектах
- Завершение приложений с помощью Win32_process
- Форматирование вывода с помощью оператора форматирования -f
- Фильтрация вывода с помощью оператора Команда Where-Object
- Использование IF оператор
- Использование переключателя Оператор
- Возможность повторного использования сценария
- Сценарии PowerShell для удаления временных файлов Windows 7
- Сценарии Windows 7 PowerShell WMI
- Отображение сообщений об ошибках в журналах событий Windows 7
- Управление точками восстановления Windows 7
- Введение в PowerShell 2.0
Сценарии PowerShell для Windows 7
Вот коллекция реальных сценариев, которые помогут вам получить опыт использования командной строки PowerShell.
Сценарии Windows 7 PowerShell
♦
Сценарии PowerShell для удаления временных файлов Windows 7
Давайте наращивать постепенно, узнаем немного о PowerShell, прежде чем действительно удалять какие-либо файлы.
Get-ChildItem $Env:temp -recurse
Примечание 0: $Env — это встроенная переменная среды. -recurse указывает Get-ChildItem искать подкаталоги.
Примечание 00: Если вам нужна помощь в запуске PowerShell в Windows 7, см. здесь.
Пример 1. Подсчет временных файлов
Clear-Host
$count=0
$List = Get-Childitem $Env:temp -recurse | Where-Object {$_.extension -eq «.tmp»}
Foreach ($_ в $List){$_. name
$count = $count +1}
«Количество файлов» +$count
Примечание 1a: $List — это созданная мной переменная. Проследите, как выходные данные Get-ChildItem становятся входными данными Where-Object благодаря конвейерной обработке PowerShell (|).
Примечание 1b: Этот сценарий PowerShell для Windows 7 также содержит цикл Foreach, важный метод автоматизации сценариев.
Пример 2. Фактическое удаление временных файлов
Теперь мы готовы к мощному командлету Remove-Item.
Clear-Host
Get-ChildItem $env:Temp | Remove-Item -recurse -force
Примечание 2a: Не беспокойтесь, если вы получаете сообщения об отказе в доступе. Но попробуйте еще раз запустить пример 1 и посмотрите, как скрипт значительно уменьшил количество временных файлов.
Сценарии Windows 7 PowerShell WMI
Одна из причин научиться писать сценарии PowerShell, а не использовать графический интерфейс, заключается в том, что вы можете получить доступ к областям, где нет графического интерфейса Windows 7, или информация неудобно распределена по 2 или 3 меню.
Пример 3: WMI ComputerSystem
Get-WmiObject win32_computersystem
Просмотр инструментария управления Windows (WMI) похож на использование микроскопа для наблюдения за тем, что происходит в операционной системе.
Парень рекомендует: монитор WMI, и это бесплатно!
Инструментарий управления Windows (WMI) — одно из скрытых сокровищ операционных систем Microsoft. К счастью, компания SolarWinds создала монитор WMI, чтобы вы могли бесплатно просматривать эти жемчужины информации о производительности. Попробуйте угадать, какие счетчики WMI использовать для таких приложений, как Microsoft Active Directory, SQL или Exchange Server.
Загрузите бесплатную копию WMI Monitor
Пример 4. Сценарий PowerShell для опроса сетевого адаптера
Get-WmiObject Win32_NetworkAdapterConfiguration
Давайте исследуем командлет PowerShell с помощью Get-Member
Get-Wmi Объект Win32_NetworkAdapterConfiguration | GM
Примечание 3a: GM — это псевдоним или сокращение от Get-Member
Теперь мы применим знания о свойствах и создадим полезный сценарий PowerShell.
Get-WmiObject Win32_NetworkAdapterConfiguration | `
Format-Table IPAddress, MACAddress, Description, DHCPEnabled -autosize
Примечание 3b: обратная кавычка PowerShell (`) позволяет команде переноситься на вторую строку, другими словами, без обратной кавычки PowerShell будет выполнять две отдельные команды и сценарий не сработает.
Сценарии Windows 8 PowerShell будут очень похожи.
Отображение сообщений об ошибках в журналах событий Windows 7
В этом сценарии вы хотите, чтобы сценарий PowerShell отображал все последние сообщения об ошибках, но вы не уверены, записана ли проблема в журнале системы или приложения.
Пример 5: Get-Eventlog с $_.
Система Clear-Host
Get-Eventlog — новейшая версия 2000 | Где {$_.entryType -match «Ошибка»}
Write-Host «Журнал приложений»
Get-Eventlog Приложение — новейшее 2000 | Где {$_.entryType -match «Error»}
Примечание 5a: Обратите внимание на аккуратный $_. строительство. Это означает, что в текущем конвейере есть любые ошибки из вывода Get-Enventlog.
Подробнее о командлетах Windows 7 и PowerShell.
Парень рекомендует: Бесплатный генератор конфигурации
Генератор конфигурации SolarWinds — это бесплатный инструмент, который позволяет вам контролировать изменения в сетевых маршрутизаторах и других устройствах SNMP. Повысьте производительность сети, активировав функции сетевого устройства, за которые вы уже заплатили.
Гай говорит, что для новичков самым большим преимуществом этого бесплатного инструмента является то, что он даст вам стимул узнать больше о настройке службы SNMP с ее «Ловушками» и «Сообществами». Попробуйте Config Generator прямо сейчас — это бесплатно!
Загрузите бесплатную копию Config Generator
Пример 6. Управление точками восстановления Windows 7
Этот сценарий Windows 7 PowerShell отключает или включает точки восстановления операционной системы. Этот сценарий покажет вам, как создать функцию PowerShell.
Функция Set-SysRestore
При создании функций PowerShell лучше всего начинать их имя с существующих глаголов, таких как «get-» или «set-». Обратите внимание, что в основе этой функции лежит переключатель ($RestoreOpt), который, в свою очередь, вызывает класс systemrestore WMI. Именно этот параметр предоставляет вам возможность включить или отключить восстановление системы.
Один важный момент: вам нужно указать другое значение для $sysName.
#########################################
##
## Автор: Дэйв Стоун, Brooks Automation
## Дата: 6 мая 2011 г.
## Включает или отключает восстановление системы на рабочей станции Windows 7
##
## Использование Set-SysRestore option имя_компьютера
##
##### #################################
Function Set-SysRestore {
param(
$RestoreOpt = $(throw «Укажите опцию, включите или отключите»),
$sysName = $(throw «Укажите IP-адрес или имя компьютера с Windows 7″) default:systemrestore»
$SysRestore. Disable(«C:\»)}
«enable»
{$SysRestore = [wmiclass]»\\$sysname\root\default:systemrestore»
$SysRestore.Enable(«C: \»)}
}
}
Set-SysRestore -RestoreOpt enable -SysName 192.168.1.20
Примечание 6a: Это сценарии PowerShell, для которых необходимо «Запускать от имени администратора».
Примечание 6b: Отметьте два параметра для параметра -RestoreOpt. Это последняя строка, которая запускает функцию Set-SysRestore и позволяет восстановить систему на диске C:\.
Примечание 6c: Чтобы отключить восстановление, введите обратную команду:
Set-SysRestore -RestoreOpt disable -SysName YourComputer
Пример:
Set-SysRestore -RestoreOpt disable -SysName Win7Computer
Примечание 6d: Обратите особое внимание на -SysName, ваш компьютер с Windows 7 или Vista вряд ли имеет IP-адрес 192.