Справочник командлетов Windows PowerShell

После того как компания Microsoft заинтересовалась Linux и открыла исходный код нескольких своих проектов, был открыт код командного интерпретатора и оболочки для выполнения системных скриптов Windows — PowerShell. Раньше PowerShell была доступна только для Windows, но теперь ее можно использовать даже в Linux и MacOS.

Как открыть PowerShell?

Это можно сделать несколькими следующими способами:

  • Через Пуск — вы найдёте приложение в общем списке компонентов под буквой W.
  • При помощи поиска в Панели задач — откройте её, и введите слово PowerShell для поиска.
  • Используя меню «Выполнить» — запустите его через комбинацию Win+R и напишите название утилиты, после чего она будет найдена в системе.
  • В коммандере задайте действие PowerShell — но, вы должны знать, что будете работать с приложением через уже запущенную строку, а не в отдельном окне.
  • В параметрах Windows выберите «Свойства панели задач» и меню «Пуск». Во вкладке «Навигация» поставьте флажок на строке «Заменить командную строку оболочкой PowerShell…». Теперь вы сможете включать утилиту комбинацией Win+X.

Что такое PowerShell?

PowerShell — это больше чем командная оболочка, это система автоматизации задач и управления конфигурацией, разработанная в Microsoft. Она состоит из интерпретатора команд (оболочки) и языка сценариев, основанного на платформе NET Framework. PowerShell реализует полный доступ к COM (Component Object Model) и WMI (Windows Management Instrumentation), поэтому позволяет системным администраторам выполнять различные административные действия на локальной или удаленных машинах. Также поддерживаются технологии  WS-Management и CIM (Common Information Model), что позволяет управлять сетевыми устройствами.

Для решения каждой возникшей задачи необходимо создавать .NET классы, которые называются cmdlet или по-нашему коммандлеты. Для создания скриптов, так же как и в Linux можно сохранять группы коммандлетов в файл. Затем эти скрипты можно применить в качестве утилит командной строки или дополнительных инструментов.

Разница между командной строкой и PowerShell

Командная строка — интерпретатор командной строки для Microsoft Windows. Он используется для автоматизации задач, связанных с системой, с использованием скриптов и командных файлов. Он используется для выдачи в систему таких команд, как Копировать, Вставить и Удалить. CMD имеет встроенные команды для выполнения различных задач, которые могут быть выполнены при запуске как администратор.

  • PowerShell — это более продвинутая версия командной строки. Он используется для запуска внешних программ, таких как ping или copy. Он также используется для автоматизации различных задач системного администрирования, недоступных из

PowerShell — это сценарий, разработанный для системных администраторов, который используется для выполнения административных задач в нескольких операционных системах. Он вызывает широкий набор команд в контексте автоматизации, который обеспечивает администрирование в Windows. Это более мощный интерпретатор командной строки, который интерпретирует как пакетные команды, так и команды PowerShell.

DateTime: The truth is out there…

Так, у меня есть 30 дней для оплаты штрафа. А какое сегодня число? Ой, а месяц-то какой? Кажется февраль… А год не високосный ли?

Да, наплевать! Есть же (Get-Date).AddDays (30) !! Далее небольшая история и много примеров работы с классом [DateTime], которые вам обязательно пригодятся, раз вы сюда попали

Когда я только начинал изучать PowerShell, я увидел много интересных и непонятных вещей, но именно класс [DateTime] был самым непонятным, поэтому я долго пытался обходить его стороной. Наверное, это связано с тем, что для написания PowerShell скриптов какое-то время совсем необязательно знать что такое методы и функции, но [DateTime] просто заставляет в это погрузиться и оказывается, все не так сложно…

Языки программирования, которые я поверхностно изучал в институте, вероятно, позволяли пользоваться какими-то методами, создавать классы и т.д., но, вероятно, для этого нужно было написать очень много строк кода, и я не представлял, что когда-нибудь я смогу создавать небольшие программы без всяких компиляторов, студий и т.д. так просто, что даже для простых задач, выполняемых мышкой, стало проще написать скрипт, чем действительно делать их мышкой. Я думаю, что любую сущность надо прочувствовать. Я написал уже несколько десятков скриптов для ActiveDirectory, прежде чем смог сказать, что я знаю, что такое ActiveDirectory ???? В книгах и статьях можно найти разные объяснения про объекты, их свойства и методы. Что-то вроде следующего: Есть дом — это объект, у него есть длина, ширина, высота — это свойства. У него есть и метод — звонок, нажми на звонок, и из дома вылетит… Как-то не складно… Так вот чтобы почувствовать что PowerShell — это ООП, почувствовать его мощь и попробовать понять что это такое и зачем это нужно в скриптовом языке, давайте обратимся за помощью к классу [DateTime] В PowerShell есть много типов данных, проверить тип данных какого-то конкретного экземпляра можно с помощью метода GetType. Создадим переменную $Date и присвоим ей значение — текущую дату:

$Date = Get-Date

Убедимся что переменная $Date теперь представляет собой экземпляр класса [DateTime]

PS> $() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True DateTime PS>

Создание файла сценария PowerShell

В Windows 10 файлы сценариев PowerShell можно создавать с помощью практически любого текстового редактора или консоли интегрированной среды сценариев (ISE).

Создание скрипта с помощью блокнота

Чтобы создать сценарий PowerShell с помощью блокнота, выполните следующие действия:

  1. Откройте приложение «Блокнот».
  2. Создайте или вставьте сценарий. Например: Write-Host ««Поздравляем! Ваш первый скрипт успешно выполнен»»

    Вышеприведенный скрипт просто выводит на экране фразу «Поздравляем! Ваш первый скрипт успешно выполнен».

  3. Сохраните файл под любым удобным названием, например, first_

Создание сценария с помощью интегрированной среды сценариев

Кроме того, консоль PowerShell ISE можно использовать для кодирования сценариев в Windows 10. Интегрированная cреда сценариев является сложным инструментом, но вы можете начать работу с помощью этих шагов:

  1. Откройте системный поиск и введите запрос Windows PowerShell ISE, щелкните правой кнопкой мыши верхний результат, и выберите Запуск от имени администратора или выберите соответствующий параметр в правой колонке.
  2. В PowerShell ISE создайте пустой файл .ps1, в котором можно создать или вставить скрипт. Например:

    Write-Host ««Поздравляем! Ваш первый скрипт успешно выполнен»»

  3. Откройте меню Файл и нажмите кнопку Сохранить.
  4. Введите название сценария. Например, first_script_
  5. Сохраните скрипт.

Как только Вы выполнили эти шаги с помощью Блокнота или PowerShell ISE, сценарий готов к запуску, но он не будет выполнен. Это происходит потому, что параметры PowerShell по умолчанию всегда настроены на блокирование выполнения любого сценария.

Windows Powershell – ввод с клавиатуры

Вспомним наш пример:

PowerShell write-host «Попытка выполнить внешнюю функцию.» write-host «Пожалуйста, введите значение, которое вы хотите узнать:» write-host «1. Результат выполнения функции» write-host «2. Дату время и погоду» write-host «3. Дату и время» $ex=read-host

12345678 write-host «Попытка выполнить внешнюю функцию.»write-host «Пожалуйста, введите значение, которое вы хотите узнать:» write-host «1. Результат выполнения функции» write-host «2. Дату время и погоду» write-host «3. Дату и время» $ex=read-host

Ключевая строка, которая отвечает за ожидание ввода пользователя – самая последняя. read-host – отвечает за прием входящих введенных символов. В нашем случае обыграно так, что ввод записывается сразу в переменную. Это было необходимо для того, чтобы выбрать одно из трех заранее известных значений. Достаточно простой пример, и в принципе все понятно. Так же и понятно как работает read-host.

Давайте попробуем усложнить. Сделаем так, что если мы ввели значение, которое не относится ни к одному варианту, то выведем ошибку об этом. Для этого преобразуем наш скрипт следующим образом:

. .\try_execute_ write-host «Попытка выполнить внешнюю функцию.» write-host «Пожалуйста, введите значение, которое вы хотите узнать:» write-host «1. Результат выполнения функции» write-host «2. Дату время и погоду» write-host «3. Дату и время» $ex=read-host if ($ex -eq «1» -or $ex -eq «2» -or $ex -eq «3») { write-host «Выполняю функцию:» } elseif ([string]::IsNullOrEmpty ($ex)) { write-host «Вы указали неверный параметр.» break; } switch ($ex){ «1»{ Execute-Function } «2»{ Get-DateOne } «3»{ Get-DateTwo } Default { write-host «Такой функции не существует.» } }

123456789101112131415161718192021222324252627282930313233343536 . .\try_execute_function.ps1 write-host «Попытка выполнить внешнюю функцию.»write-host «Пожалуйста, введите значение, которое вы хотите узнать:» write-host «1. Результат выполнения функции» write-host «2. Дату время и погоду» write-host «3. Дату и время» $ex=read-host if ($ex -eq «1» -or $ex -eq «2» -or $ex -eq «3») { write-host «Выполняю функцию:»}elseif ([string]::IsNullOrEmpty($ex)) { write-host «Вы указали неверный параметр.» break;}switch ($ex){ «1»{ Execute-Function } «2»{ Get-DateOne } «3»{ Get-DateTwo } Default { write-host «Такой функции не существует.» }}

Что мы сделали? Во-первых, спасибо Дмитрию, оставившему комментарий в прошлой статье, который подсказал, что файл с функциями можно подключать только в начале файла. Во-вторых запомните именно такой синтаксис в операторе if. Если вы попробуете реализовать кастомный exception с условием -ne (not equals), то условие срабатывать не будет. Это связано с особенностями семантики powershell. В-третьих, теперь если мы ничего не введем, то у нас вылетит ошибка “Вы ничего не выбрали!”. В четвертых, у нас целых 2 исключения:

  1. Первое находится в elseif – выпадет в случае, если мы ничего не ввели.
  2. Второе находится в Default – это блок, который выводит значение по умолчанию, если в оператор switch прилетело значение, которого в нем нет.

Так же мы добавили завершение скрипта, если мы ничего не ввели – break;

Итак, давайте попробуем запустить наш скрипт:

Основные команды для PowerShell

В программе поддерживается огромное количество команд, применяемых к различным компонентам операционной системы Windows 10. Хорошо что есть возможность получить справку о любой команде непосредственно в окне программы Windows PowerShell. Это поможет разобраться с основными командами и принципами работы в новой среде.

Заключение

На самом деле Windows PowerShell — это очень полезная программа, которая не раз экономила нам время. Множество инструкций писались на примерах с её использованием. Но даже половина возможностей обновлённой оболочки не была задействована. О работе в ней можно написать значительно больше. Но благодаря основным командам можно ознакомиться со всеми возможностями программы.

2] запустите центр обновления windows с помощью командной строки

Командная строка в операционных системах Windows существует очень давно, тогда как Windows Powershell является сравнительно новым. Следовательно, он имеет аналогичные возможности для запуска обновлений Windows, но здесь следует подчеркнуть, что вам не нужно загружать какой-либо модуль для обновлений Windows.

Сначала откройте командную строку, выполнив поиск cmd в поле поиска Cortana, и запустите ее с привилегиями уровня администратора.

Нажмите Да , чтобы получить приглашение UAC.

Наконец, введите следующие команды и нажмите клавишу Enter , чтобы выполнить соответствующие операции.

Начните проверять наличие обновлений:

UsoClient StartScan

Начать загрузку обновлений:

UsoClient StartDownload

Начните установку загруженных обновлений:

UsoClient StartInstall

Перезагрузите устройство после установки обновлений:

UsoClient RestartDevice

Проверьте, загрузите и установите обновления:

UsoClient ScanInstallWait

Стоит отметить, что упомянутые выше команды командной строки предназначены только для Windows 10. Для более старых версий Windows вам необходимо использовать следующие команды:

Начните проверять наличие обновлений:

wuauclt/detenow

Начать установку обнаруженных обновлений:

wuauclt/updatenow

Проверьте, загрузите и установите обновления:

wuauclt/detectnow/updatenow

Надеюсь, вы найдете этот пост полезным.

Шаг 4: Запуск и обновление PowerShell

После перезагрузки компьютера PowerShell уже будет добавлена в Windows: вы сможете запустить ее и проверить обновления через загруженный ранее установочный пакет. Если же нужды в последней версии оснастки нет, просто переходите к ее стандартному использованию.

  1. Откройте «Пуск», найдите там Windows PowerShell и запустите это приложение.
  2. Далее перейдите к скачанному ранее архиву, где помимо файла MSU располагался скрипт для PowerShell. Перетащите его на рабочий стол для распаковки.
  3. Теперь перетащите его в PowerShell и дождитесь появления новой строки.
  4. Запустите скрипт, нажав клавишу Enter.

Если же на экране появилась ошибка, значит, приложение не нуждается в обновлении.

Шаг 4: Запуск и обновление PowerShell

Установка последней версии PowerShell через GitHub

Шаг 4: Запуск и обновление PowerShell

Как альтернативный вариант разберем скачивание отдельного приложения с PowerShell через GitHub. Его последняя версия устанавливается рядом с классической оболочкой и может работать параллельно.

Шаг 4: Запуск и обновление PowerShell

Перейти к скачиванию последней версии PowerShell с GitHub

Шаг 4: Запуск и обновление PowerShell
  1. После перехода по ссылке выше найдите таблицу с наименованиями поддерживаемых платформ, где выберите свою версию Windows и скачайте стабильную версию приложения.
  2. По окончании загрузки запустите установщик.
  3. В нем переходите к следующему шагу.
  4. Выберите место на компьютере, куда хотите установить программу.
  5. Ознакомьтесь с дополнительными опциями перед установкой и отметьте галочкой те параметры, которые хотите применить.
  6. Ожидайте окончания установки, а затем найдите исполняемый файл PowerShell 7 на рабочем столе или в «Пуск».
  7. После запуска попробуйте ввести любой скрипт, чтобы удостовериться в нормальной работе консоли.
Шаг 4: Запуск и обновление PowerShell

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Шаг 4: Запуск и обновление PowerShell

Помогла ли вам эта статья?

Шаг 4: Запуск и обновление PowerShell

ДА НЕТ

Шаг 4: Запуск и обновление PowerShell

Работа с Hyper-V

Для работы с Hyper-V в Windows PowerShell существует много командлетов, вот небольшой перечень:

  • New-VM — создание новой виртуальной машины;
  • Set-VM — настройка виртуальной машины;
  • Start-VM — запуск виртуальной машины;
  • Stop-VM — закрытие, выключение или сохранение виртуальной машины;
  • Import-VM — импорт виртуальной машины из файла;
  • Move-VM — перемещение виртуальной машины на новый Hyper-V хост;
  • Remove-VM — удаление виртуальной машины;
  • Rename-VM — переименование виртуальной машины;
  • New-VHD — создание одного или нескольких новых виртуальных жестких дисков;
  • Set-VHD – настройка виртуального жесткого диска;
  • Test-VHD — тестирование виртуального жесткого диска на предмет обнаружения проблем, которые сделали бы его непригодным для использования;
  • Add-VMDvdDrive — добавляет DVD диск к виртуальной машине;
  • Remove-VMDvdDrive — удаляет DVD-диск из виртуальной машины;
  • Add-VMHardDiskDrive — добавляет жесткий диск к виртуальной машине;
  • Remove-VMHardDiskDrive — удаляет один или несколько виртуальных жестких дисков (VHD) из виртуальной машины;
  • Add-VMNetworkAdapter — добавляет виртуальный сетевой адаптер на виртуальной машине;
  • Remove-VMNetworkAdapter — удаляет один или несколько виртуальных сетевых адаптеров из виртуальной машины;
  • Copy-VMFile — копирование файлов на виртуальную машину;
  • Get-VMVideo – выводит информацию о настройках видео для виртуальных машин;
  • Move-VMStorage — перемещение хранилища виртуальной машины.
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Понравилась статья? Поделиться с друзьями:
Adblock
detector