Windows PowerShell - это продукт Microsoft, представляющий собой командную строку и скриптовый язык (интерпретатор), специально созданный для облегчения управления Windows и других продуктов, разработанных для нее, таких как Exchange Server 2007. Если вы не слышали о Windows PowerShell раньше, то представьте его себе, как встроенную командную строку Windows (cmd.exe) и простой в использовании VBScript, позволяющий вам автоматизировать и выполнять задачи системного администрирования. Это приложение действительно производит впечатление полезного и продуктивного. Пригодится каждому IT профессионалу, как для автоматизации действий, так и для настройки приложений и системы в целом.
12 особенностей Windows PowerShell
Встроенные команды для управления Windows.
Все команды в Windows PowerShell следуют пунктуации "глагол-существительное", например get-service, get-process, stop-service, get-wmiobject. Напечатав get-command в строке, вы увидите более 130 доступных команд, которые предоставляет Windows PowerShell.
Для получения всех сервисов, напечатайте:
PS> get-service
Мощь шаблонов и рабочих объектов.
Для получения всех сервисов, начинающихся с буквы "w", а также всех зависящих от них сервисов, просто введите:
С помощью Whatif вы можете проверить команду до ее применения.
В Windows PowerShell есть уникальный параметр: Whatif, который покажет результат команды до ее непосредственного выполнения.
Следующая команда сообщит вам, какие сервисы, начинающиеся с "w3", должны быть остановлены. Эта утилита позволит вам исследовать особенности PowerShell без причинения какого-либо вреда вашей системе.
PS> stop-service w3* -whatif
Создание копии команд.
PowerShell позволяет вам пользоваться копиями всех ваших команд. Это делает простым тестирование команд и одновременно сохранение их для использования в скрипте.
Можно заставить Windows говорить из командной строки.
Так как Windows PowerShell оптимизирован для работы с объектами, обращение к COM объектам стало также просто, как и к .NET Framework из командной строки. Указанная ниже команда говорит вашему компьютеру, управляемому Windows Vista, произнести фразу "Windows Vista and PowerShell". Можно заменить ее своей любимой фразой.
PS> $spVoice = new-object -com "SAPI.spvoice"
PS> $spVoice.Speak("Windows Vista and PowerShell")
Использование Windows PowerShell для доступа к приложениям, таким как Windows Media Player 11.
Следующая команда может быть легко помещена в скрипт, который воспроизведет песню группы "The Posies" в Windows Media Player. Это элементарный пример, но он демонстрирует, как Windows PowerShell обеспечивает исчерпывающий доступ к приложениям через командную строку. (Вы можете найти больше примеров скриптов для WM11 на сайте: http://www.microsoft.com/technet/scriptcenter/topics/msh/cmdlets/get-itemproperty.mspx).
Возможности Windows PowerShell для вычисления дискового пространства из командной строки.
PowerShell позволяет вам выполнять базовые вычисления в командной строке, например:
PS> 2*2
Но PowerShell также позволит быстро решить задачи с вычислением места на диске. Например, сколько компакт дисков потребуется для резервного копирования 11Гб?
PS> 11gb/700mb
Или, сколько терабайт (1024 Гб) дискового пространства нужно для 425 настольных компьютеров с 320Гб информации на каждом?
PS > (320gb*425)/1024GB
Использование PowerShell как калькулятор календарных дат.
Чтобы вычислить, сколько дней осталось до Нового Года, просто наберите в командной строке:
PS> ([DateTime]"1/1/2008" -[datetime]::now).days
Сколько файлов типа Х есть у вас на компьютере?
В Windows Vista есть множество различных типов файлов: для логов событий, групповых политик и прочего. PS1 это расширение файлов скриптов Windows PowerShell. Вот команда, которая вернет количество VBScript-файлов, bat-файлов и скриптов PowerShell в папке и ее подкаталогах.
Сбор информации Windows System Assessment Tool из командной строки.
Windows System Assessment Tool (WSAT) предоставляет численный рейтинг (1=плохо, 5=хорошо) системной производительности процессора, дисков, графики и прочего, так, что вы можете получить суммарную информацию и потенциальное решение для увеличения производительности компьютера. Так как эти данные сохранены в WMI, Windows PowerShell может программно собрать эту информацию с множества компьютеров и позволить вам быстро оценить статус набора компьютеров без непосредственного входа в каждый из них. Вот команда, предоставляющая WSAT данные с одного персонального компьютера под управлением Windows Vista, и хорошо формирующая полученную информацию в хорошие, автоматически размеченные таблицы для просмотра.
User Account Control (UAC) помогает усовершенствовать безопасность, требуя, чтобы все программы по умолчанию запускались в стандартном режиме пользователя, а не с привилегиями администратора. Некоторые IT профессионалы спрашивали, могут ли они временно отключить сообщения, если им нужно выполнить последовательность операций, требующих привилегий администратора. Следующий пример может быть использован для временного отключения сообщений UAC. Значение 0 отключит предупреждения UAC в Windows Vista,а значение 2 опять включит их.
Новая технология Windows Vista под названием BitLocker помогает предотвратить потерю данных путем шифрования. Попытки вора, использующего другую операционную систему или специальное программное обеспечение для взлома и похищения информации, оффлайн просмотра данных, будут предотвращены системой защиты, если BitLocker установлен. Вот как вы можете выключить или включить BitLocker из командной строки Windows PowerShell (для этого примера, Windows BitLocker должен быть включен для диска C:\).
Использование Windows PowerShell может быть полезно для среды разработчиков, где требуется управление тысячами компьютеров. Операции, на которые раньше затрачивалось много времени, теперь могут быть выполнены за секунды.
Сайт является источником уникальной информации о семействе операционных систем Windows и других продуктах Microsoft. Перепечатка материалов возможна только с разрешения редакции.
Работает на WMS 2.34 (Страница создана за 0.043 секунд (Общее время SQL: 0.023 секунд - SQL запросов: 53 - Среднее время SQL: 0.00043 секунд))