Все команды powershell windows 10

Шпаргалка по PowerShell Команды операторы и многое другое
Шпаргалка по PowerShell Команды операторы и многое другое

Шпаргалка по PowerShell — это версия языка командной строки Windows, которая помогает вам легко выполнять и автоматизировать критически важные задачи в ваших системах. Но как выполнять эти задачи и максимально использовать PowerShell в своей системе Windows?

Системный администратор

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

Начнем с краткого введения в команды Windows 10 PowerShell.

Основы PowerShell

PowerShell — это кроссплатформенное и широко используемое решение для автоматизации задач, сочетающее в себе возможности оболочки командной строки, языка сценариев и структуры управления конфигурацией. PowerShell можно запускать на операционных системах Windows, Linux и macOS. В отличие от других доступных оболочек, которые только принимают и возвращают данные, PowerShell принимает и возвращает объекты .NET.

Эта оболочка имеет следующие возможности.

  • Удобная история командной строки
  • Широкие возможности, такие как завершение табуляции и предсказание команд
  • Псевдонимы команд и параметров
  • Система изменения команд
  • Встроенная справочная система, подобная Unix man pages

Учитывая возможности любого языка сценариев, вы можете использовать PowerShell для автоматизации процессов и задач управления системой. Он позволяет создавать, тестировать и развертывать решения в средах CI/CD.

PowerShell построен на базе .NET Common Language Runtime (CLR), что означает, что все входные и выходные данные являются объектами .NET. Вам не придется разбирать текстовый вывод, чтобы получить из него информацию.

Язык сценариев PowerShell обладает следующими возможностями.

  • Функции, классы, объекты и модули
  • Простая система форматирования для обеспечения четкого вывода данных для повышения удобочитаемости
  • Встроенная поддержка различных форматов данных, таких как CSV, JSON и XML
  • Система типов для создания динамических типов

Теперь перейдем к некоторым полезным командам PowerShell.

Шпаргалка PowerShell по командам

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

Команда Описание
Get-Help
Эта команда позволяет получить поддержку с помощью PowerShell.
Get-PSdrive
Эта команда предлагает вам список доступных PSDrives, таких как c, env, hklm, hkcu, alias и т.д.
Get-ChildItem
В любом реестре дочерние ключи — это подключи текущего ключа. Чтобы получить необходимые сведения, можно воспользоваться следующей командой.
Get-ChildItem -recurse
Выполните эту команду, чтобы рекурсивно перечислить все дочерние элементы текущего PSdrive, папки или ключа реестра.
Get-ChildItem -rec -force
Используйте эту команду для включения скрытых папок (каталогов).
(Get-ChildItem).name or Get-ChildItem -name
Выполните любую из этих команд, чтобы получить список имен файлов и каталогов в текущей папке.
(Get-ChildItem).count 
Используйте эту команду, чтобы получить количество записей в коллекции объектов, возвращенных командой Get-Children.

PSdrives

PSdrives — это коллекция объектов, сгруппированных вместе, чтобы к ним можно было получить доступ как к диску файловой системы. PSprovider» выполняет эту группировку.

По умолчанию сеанс PS может обращаться к нескольким PSdrives, включая c:, env:, alias: и HKLM:, где c: означает обычный диск c Windows; env: — это пространство переменных среды Windows; alias: — это коллекция псевдонимов команд; а HKLM — это ветка в реестре.

При любом сеансе PS пользователь попадает в свою домашнюю папку. Если вы хотите перейти из сеанса PS на другой диск PSdrive и получить информацию с этого диска, воспользуйтесь следующими командами:

Команды Описание
Switching to env-
Символ подсказки изменится на «ENV:\>». Установите env, выполнив следующую команду:

Set-Location env-
Env:\> Get-Childitem
Эта команда предоставит вам все переменные окружения.
Env:\> Get-Childitem userprofile
Используйте эту команду, чтобы получить переменные окружения «userprofile».
Env:\> Set-Location alias:
Выполните следующую команду, чтобы изменить символ подсказки на » Alias».
Alias:\> Get-Childitem
Выполните эту команду, чтобы получить все дочерние элементы всех псевдонимов.
Alias:\> Set-Location C:\
Используйте эту команду, чтобы снова получить приглашение «C:/>», вернувшись к диску по умолчанию.
C:\Users\user_name>$alias:ls
Выполните эту команду, чтобы узнать, что означает псевдоним «ls».

Конвейеры

Cmdlets использует конвейеры для передачи объектов, но не потоков символов, как Unix. Символ конвейера — | (ASCII 124), за которым следует команда, обрабатывающая вывод, проходящий через конвейер. Конвейер состоит из следующих трех этапов.

Get-ChildItem *.txt | Where-Object length -lt 1000 | Sort-Object length

В следующей таблице приведены некоторые из основных команд конвейеров:

Команда Описание
(Get-Item /Users/praashibansal/Desktop).lastwritetime.year
Легко устанавливает значение свойства ‘lastwritetime.year’ на текущую дату и время, не влияя на содержимое файла.
(Get-ChildItem data.txt.rtf -name).name # -> null
Предоставляет пустой результат
"data.txt.rtf" | Rename-Item -NewName "data_new.txt.rtf"
Изменяет старые имена файлов и расширения файлов на новые
Get-ChildItem data.txt | Rename-Item -new {$_.name}
Тривиальная команда переименования, вызывающая автоматическую переменную
Get-ChildItem data.txt.rtf -name | Rename-Item -new {$_.name}
Если у передаваемого объекта $_ нет свойства (name), вы получите ошибку, так как параметр $_.name является null
Get-ChildItem | Select-Object basename | Sort-Object *
Отображает список имен всех файлов, присутствующих в текущей папке, отсортированных в алфавитном порядке.
Move-Item *.txt subdirectory
Перемещает все файлы в подкаталог папки
Get-ChildItem *.txt | Move-Item ..\
Выдает сообщение об ошибке, что Move-Item не имеет входа

Alias (Алиас)

Cmdlets поддерживают несколько псевдонимов. В следующей таблице приведены некоторые псевдонимы и их описания:

Команда Описание
Add-Content
Добавляет значение к файлу
Get-Content
Поиск содержимого файла в массиве
Set-Location
Изменение папки, ключа или диска PS
Clear-Host
Очищает консоль
Remove-Item
Удаление файлов
Get-ChildItem -Path .\
Списки папок, ключей или дочерних элементов PSDrive
Write-Output
Отправляет массив в консоль, конвейер или перенаправляет его в файл
Foreach-Object
Обход каждого объекта в конвейере
Format-Table
Форматирует таблицу с выбранными свойствами для каждого объекта в каждом столбце
Format-List
Форматирует свойства процесса по имени
Get-Alias
Обеспечивает псевдоним командлета
Get-Command
Предоставляет вам команды только из текущей сессии
Get-Member
Извлечение всех членов объекта
Get-ItemProperty .\data.txt | Format-List
Предоставляет свойства указанного элемента
Get-ItemPropertyValue -Path '.\data.txt'
 -Name LastWriteTime
Получает текущее значение для указанного свойства при использовании параметра name
Get-Variable m*
Находит имена переменных сеансов
New-Item -Path .\ -Name "testfile1.txt" -ItemType
 "file" -Value "This is a text string."
Создает новый файл, каталог, символическую ссылку, ключ реестра или запись реестра.
Get-Process
Выдает полный список всех запущенных процессов
Get-Location
Предоставляет местоположение текущего каталога или ключа реестра
Rename-Item -Path “old_name” -NewName “new_name”
Переименовывает старое имя элемента в новое имя
Remove-Item .\testfile1.txt
Удаляет указанный каталог, файлы или ключи реестра
Remove-Variable 
Удаляет указанную переменную
Start-Sleep
Приостанавливает деятельность на определенный период времени

Операторы

Арифметические операторы

Оператор Описание Пример
+ Складывает целые числа; объединяет 6 + 2
строки, массивы и хэш-таблицы. «file» + «name»

@(1, «one») + @(2.0, «two»)

@{«one» = 1} + @{«two» = 2}

+ Делает число из объекта 123
Вычитание одного значения из другого 6 — 2
Вычисляет противоположное число — -6
(Get-Date).AddDays(-1)
* Умножение чисел или копирование строк и массивов заданное количество раз 6 * 2
@(«!») * 4
«!» * 3
/ Делит два значения 6 / 2
% Modulus — возвращает остаток от операции деления 7 % 2
-band Побитовое И 5 -band 3
-bnot Побитовое НЕ -bnot 5
-bor Побитовое ИЛИ 5 -bor 0x03
-bxor Побитовое XOR 5 -bxor 3
-shl Сдвигает биты влево 102 -shl 2
-shr Сдвигает биты вправо 102 -shr 2

Приоритет оператора

Приоритет Оператор Описание
1 () Круглые скобки
2 Для отрицательного числа или унарного оператора
3 *, /, % Для умножения и деления
4 +,- Для сложения и вычитания
5 -band, -bnot, -bor, -bxor, -shr, and -shl Для побитовых операций

Операторы присваивания

Оператор Описание
= Устанавливает значение переменной на указанное значение
+= Увеличивает значение переменной на указанное значение или добавляет указанное значение к существующему значению
-= Уменьшает значение переменной на заданную величину
*= Умножает значение переменной на указанное значение или добавляет указанное значение к существующему значению
/= Делит значение переменной на заданное значение
%= Делит значение переменной на заданное значение, а затем присваивает переменной остаток (модуль).
++ Увеличивает значение переменной, присваиваемого свойства или элемента массива на 1.
Уменьшает значение переменной, присваиваемого свойства или элемента массива на 1.

Операторы сравнения

Тип Оператор Сравнительный тест
Равенство -eq равно
-ne не равно
-gt больше, чем
-ge больше или равно
-lt меньше чем
-le меньше чем или равно
Соответствие -like строка соответствует шаблону подстановки
-notlike строка не соответствует шаблону
-match строка соответствует regex-шаблону
-notmatch строка не соответствует regex-шаблону
Замена -replace заменяет строки, соответствующие шаблону regex
Сдерживание -contains коллекция содержит значение
-notcontains коллекция не содержит значения
-in значение находится в коллекции
-notin значение отсутствует в коллекции
Тип -is оба объекта имеют одинаковый тип
-isnot объекты разного типа

Логические операторы

Оператор Описание Пример
-and Логическое И. TRUE, когда оба утверждения истинны. (1 -eq 1) -and (1 -eq 2)

FALSE

-or Логическое ИЛИ. TRUE, когда любое из утверждений TRUE. (1 -eq 1) -or (1 -eq 2)

TRUE

-xor Логическое ИСКЛЮЧАЮЩЕЕ ИЛИ. ИСТИНА, когда только одно утверждение является ИСТИНОЙ. (1 -eq 1) -xor (2 -eq 2)

FALSE

-not Логическое не. Отрицает утверждение, которое следует за ним. -not (1 -eq 1)

FLASE

! То же, что и -нет !(1 -eq 1)

FALSE

Оператор перенаправления

Оператор Описание Синтаксис
> Отправить указанный поток в файл n>
>> Добавить указанный поток в файл n>>
>&1 Перенаправляет указанный поток на поток Success n>&1

Операторы типа

Оператор Описание Пример
-isNot Возвращает TRUE, если входные данные не являются экземпляром указанного.NET типа. (get-date) -isNot [DateTime]

FALSE

-as Преобразует входные данные в указанный тип .NET. «5/7/07» -as [DateTime]

Monday, May 7, 2007 00:00:00

Другие операторы

Оператор Описание
() Оператор группировки Позволяет переопределить старшинство операторов в выражениях
&() Оператор подвыражения Выдает результат одного или нескольких утверждений
@( ) Оператор подвыражения массива Возвращает результаты одного или нескольких операторов в виде массивов.
& Фоновый оператор Конвейер перед & выполняется этой командой в задании Powershell.
[] Cast оператор Преобразует объекты к определенному типу.

Регулярные выражения

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

Метод Чувствительность к случаю
Select-String use -CaseSensitive switch
switch statement use the -casesensitive option
operators prefix with ‘c’ (-cmatch, -csplit, or -creplace)

Литералы символов

Регулярное выражение может быть литеральным символом или строкой.

Группы символов

Они позволяют сопоставить любое количество символов за один раз, в то время как [^character group] сопоставляет только символы, не входящие в группу.

Диапазон символов

Шаблон также может быть диапазоном символов. Символы могут быть алфавитными [A-Z], цифровыми [0-9] или даже [ -~] (все печатаемые символы) в формате ASCII.

Числа

Класс символов \d будет соответствовать любой десятичной цифре. И наоборот, \D будет соответствовать любой недесятичной цифре.

Словесный символ

Класс символов \w будет соответствовать любому символу слова [a-zA-Z_0-9]. Чтобы подобрать любой несловосочетаемый символ, используйте \W.

Подстановочный знак

Точка (.) является символом подстановки в регулярных выражениях. Он будет соответствовать любому символу, кроме новой строки (\n).

Пробел

Пробельные символы сопоставляются с помощью класса символов \s. Любой не пробельный символ сопоставляется с помощью \S. Буквальные символы пробела ‘ ‘ также могут быть использованы.

Экранирование символов

Обратная косая черта (\) используется для экранирования символов, чтобы механизм регулярных выражений не разбирал их.

Следующие символы зарезервированы: []().\^$|?*+{}.

Подстановка в регулярном выражении.

Регулярные выражения с оператором -replace позволяют динамически заменять текст с помощью захваченного текста.

<input> -replace <original>, <substitute>

Управление потоком

ForEach-Object
ForEach-Object — это командлет, который позволяет выполнять итерации по элементам в конвейере, например, с помощью однострочных команд PowerShell. ForEach-Object будет передавать объекты по конвейеру.

Хотя параметр Module команды Get-Command принимает несколько значений, которые являются строками, он будет принимать их только через конвейерный ввод с помощью имени свойства или ввода параметра.

Если вы хотите передать две строки по значению в Get-Command для использования с параметром Module, используйте команду ForEach-Object:

$ComputerName = 'DC01', 'WEB01'

foreach ($Computer in $ComputerName) {

Get-ADComputer -Identity $Computer

}

For

Цикл «for» выполняет итерации, пока заданное условие истинно.

Например:

for ($i = 1; $i -lt 5; $i++) {

Write-Output "Sleeping for $i seconds"

Start-Sleep -Seconds $i

}

Do

В PowerShell существует два различных цикла «do». Do Until выполняется, пока заданное условие ложно.

Пример 1:

$number = Get-Random -Minimum 1 -Maximum 10

do {

$guess = Read-Host -Prompt "What's your guess?"

if ($guess -lt $number) {

Write-Output 'Too low!'

}

elseif ($guess -gt $number) {

Write-Output 'Too high!'

}

}

until ($guess -eq $number)

Пример 2:

$number = Get-Random -Minimum 1 -Maximum 10

do {

$guess = Read-Host -Prompt "What's your guess?"

if ($guess -lt $number) {

Write-Output 'Too low!'

} elseif ($guess -gt $number) {

Write-Output 'Too high!'

}

}

while ($guess -ne $number)

While

Подобно циклу Do While, цикл While выполняется до тех пор, пока заданное условие истинно. Однако разница заключается в том, что цикл While оценивает условие в верхней части цикла перед выполнением любого кода. Таким образом, он не выполняется, если условие оценивается как ложное.

Например:

$date = Get-Date -Date 'November 22'

while ($date.DayOfWeek -ne 'Thursday') {

$date = $date.AddDays(1)

}

Write-Output $date

Переменные

PowerShell позволяет хранить все типы значений. Например, он может хранить результаты команд и элементы командных выражений, такие как имена, пути и параметры. Вот некоторые из различных переменных PowerShell.

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

Автоматические переменные: Эти переменные хранят состояние PowerShell и создаются PowerShell. Только PowerShell может изменять их значения по мере необходимости для поддержания точности. Пользователи не могут изменять значение этих переменных. Например, переменная $PSHOME будет хранить путь к директории установки PowerShell.

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

Чтобы создать новую переменную, необходимо использовать оператор присваивания и присвоить переменной значение. Объявлять переменную перед ее использованием не нужно. Значение по умолчанию для всех переменных — $null.

Например:

$MyVariable = 1, 2, 3

$MyVariable

Шпаргалка по PowerShell

Функция

Именование функции
Для именования функции используйте имя регистра Паскаля с утвержденным глаголом и существительным в единственном числе. Список утвержденных глаголов можно получить, выполнив Get-Verb:

Get-Verb | Sort-Object -Property Verb

Шпаргалка по PowerShell

Создание простой функции

Для создания простой функции используйте ключевое слово function, за которым следует имя функции. Затем используйте открытую и закрывающую фигурные скобки. Функция будет выполнять код, содержащийся в этих фигурных скобках.

Например:

function Get-Version {

$PSVersionTable.PSVersion

}

Шпаргалка по PowerShell

Работа с модулями

Модуль — это пакет, содержащий объекты PowerShell, такие как команды, провайдеры, функции, рабочие процессы, значения переменных и псевдонимы. Элементы пакета можно реализовать в сценарии PowerShell, скомпилированной библиотеке DLL или и в том, и в другом. PowerShell автоматически импортирует модули при первом запуске любой команды в установленном модуле. Вы можете использовать команды в модуле без настройки или конфигурации профиля.

Как использовать модуль
Чтобы использовать любой модуль, его необходимо сначала установить. Затем найдите команду, которая поставляется вместе с модулем, и используйте ее.

Установка модуля
Если вы получили модуль в виде папки, установите его перед использованием в командной строке PowerShell. Некоторые модули являются предустановленными. Вы можете использовать следующую команду для создания каталога Modules для текущего пользователя:

New-Item -Type Directory -Path $HOME\Documents\PowerShell\Modules

Шпаргалка по PowerShell

Скопируйте всю папку модуля в каталог Modules. Для копирования папки можно использовать любой метод, включая проводник Windows, Cmd.exe и PowerShell.

Поиск установленных модулей
Выполните следующие действия, чтобы найти модули, установленные в местоположении модулей по умолчанию (не импортированные).

Get-Module -ListAvailable

Шпаргалка по PowerShell

Поиск команд в модуле

Выполните следующую команду, чтобы найти команды модуля:

Get-Command -Module <module-name>

Get-Command -Module Microsoft.PowerShell.Archive

Шпаргалка по PowerShell

Импортирование модуля

Выполните следующую команду с нужным именем модуля:

Import-Module <module-name>

Удаление имени модуля

Вы можете выполнить следующую команду с нужным именем модуля:

Remove-Module <module-name>

Просмотр расположения модулей по умолчанию

Используйте следующую команду для просмотра расположения модулей по умолчанию:

$Env:PSModulePath

Добавление местоположения модуля по умолчанию

Вы можете использовать следующий формат команды:

$Env:PSModulePath = $Env:PSModulePath + ";<path>"

Добавление местоположения модуля по умолчанию в Linux или macOS

Используйте следующее, чтобы выполнить ту же команду, что и выше, только в Linux или macOS:

$Env:PSModulePath += ":<path>"

Хеш-таблицы

Хеш-таблица — это сложная структура данных для хранения данных в виде пар ключ-значение. Мы также называем хэш-таблицу словарем или ассоциативным массивом. Чтобы понять, что такое хэш-таблица, рассмотрим серию IP-адресов и соответствующие имена компьютеров. В хэш-таблице эти данные хранятся в виде пар ключ-значение, где IP-адреса обозначают ключи, а имена компьютеров — соответствующие им значения.

Синтаксис хэш-таблицы выглядит следующим образом:

@{ <name> = <value>; [<name> = <value> ] ...}

Синтаксис упорядоченного словаря выглядит следующим образом:

[ordered]@{ <name> = <value>; [<name> = <value> ] ...}

Создание хэш-таблиц

Если вы хотите создать хэш-таблицу, выполните следующие действия:

  • Начните хэш-таблицу со знака at (@) и заключите ее в фигурные скобки ({}).
  • Хэш-таблица должна содержать хотя бы одну пару ключ-значение, поэтому вводите данные после создания хэш-таблицы.
  • Отделите ключ от его значения с помощью знака равенства (=).
  • Разделяйте пары ключ/значение в хэш-таблице точкой с запятой (;).
  • Заключите пробел между ключами в кавычки. Значения должны быть допустимыми выражениями PowerShell. Также заключайте строки в кавычки, даже если между ними нет пробелов.
  • Сохраните хэш-таблицу как переменную, чтобы эффективно управлять ею.
  • При назначении упорядоченной хэш-таблицы переменной поместите атрибут [ordered] перед символом @. Если поместить его перед именем переменной, команда не выполнится.

Например:

$hash = @{}

$hash = @{ Number = 1; Shape = "Square"; Color = "Blue"}

[hashtable]$hash = [ordered]@{

Number = 1; Shape = "Square"; Color = "Blue"}

$hash

Добавление и удаление ключей и значений

Чтобы добавить ключи и значения в хэш-таблицу, используйте следующий формат команды:

$hash[«<key>»] = «<value>»

Например, вы можете добавить ключ «Time» со значением «Now» в хэш-таблицу с помощью следующего формата оператора:

$hash["Time"] = "Now"

или

$hash.Add("Time", "Now")

Или вы можете удалить ключ с помощью этого выражения:

$hash.Remove("Time")

Асинхронная обработка событий

Эти команды позволяют регистрировать и отменять подписки на события и выводить список существующих подписок. Вы также можете перечислить ожидающие события и обработать или удалить их по желанию.

Команды PowerShell для обработки событий

Имя командлета обработки событий Описание
Register-ObjectEvent Этот командлет регистрирует подписку на события для событий, генерируемых объектами .NET
Register-WmiEvent Регистрирует подписку на события для событий, генерируемых объектами WMI
Register-EngineEvent Регистрирует подписку на события для событий, генерируемых самим PowerShell
Get-EventSubscriber Получает список зарегистрированных подписок на события в сессии
Unregister-Event Удаляет одну или несколько зарегистрированных подписок на события
Wait-Event Ожидает наступления события. Эта команда может ждать определенного события или любого события. Она также позволяет указать тайм-аут, ограничивающий время ожидания события. По умолчанию ожидание длится вечно.
Get-Event Получает ожидающие необработанные события из очереди событий
Remove-Event Удаляет ожидающее событие из очереди событий
New-Event Эта команда вызывается в сценарии, чтобы позволить сценарию добавлять свои собственные события в очередь событий

Шпаргалка по PowerShell: заключение

В итоге? Шпаргалка по PowerShell — это универсальный справочник по синтаксису и командам PowerShell. В этой шпаргалке по командам Windows PowerShell мы рассмотрели все основы, чтобы помочь даже новичкам сориентироваться в PowerShell.

Как и в любом другом языке программирования, вы можете использовать переменные и операторы, создавать псевдонимы и функции и даже поддерживать управление потоком.

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

Хотите расширить свои знания о командной строке Windows?

Часто задаваемые вопросы

1. Как получить список команд PowerShell?
Вы можете использовать команду get-command.

2. Сколько существует команд PowerShell?
В PowerShell существует более 200 команд.

3. Как изучить PowerShell для начинающих?
Вы можете воспользоваться вводным руководством Microsoft по PowerShell. Оно содержит простой язык и простые примеры для лучшего понимания.

4. Является ли Windows PowerShell тем же самым, что и командная строка?
В следующей таблице приведены основные различия между PowerShell и командной строкой:

PowerShell Командная строка
Введен в 2006 году Введен в 1981 году
Работает как с пакетными командами, так и с командами PowerShell Работает только с пакетными командами
Позволяет создавать псевдонимы для команд или сценариев Не поддерживает создание псевдонимов команд
Позволяет передавать вывод команды другим командам. не позволяет передавать вывод команды другим командам.
Вывод осуществляется в виде объекта Вывод — просто текст
Можно выполнять последовательность команд в рамках сценария Требуется, чтобы одна команда завершилась раньше другой
Имеет библиотеки для программирования, так как построен на .net framework. Отсутствие библиотек программирования
Бесшовная интеграция с WMI Требуется внешний плагин для взаимодействия с WMI
Поддерживает системы Linux Не поддерживает системы Linux
Выполняет все типы программ Запускает только программы консольного типа

5. Как сделать командную строку по умолчанию вместо PowerShell?

Откройте Настройки > Персонализация > Панель задач. Теперь установите опцию «Заменить Command Prompt на Windows PowerShell» в меню, когда я нажимаю правой кнопкой мыши на кнопку «Пуск» или нажимаю клавиши Windows + X» в положение «Выкл».

Возможно вам так же будет интересно:

Скрипты Windows PowerShell для работы с Active Directory

June 11th, 2015

Summary: Ed Wilson, Microsoft Scripting Guy, provides a table of basic Windows PowerShell commands.
Microsoft Scripting Guy, Ed Wilson, is here. Some questions are simply confusing, and other questions can be misleading, or even wrong. What do I mean? Well, I recently received a question from a person who wanted to know how to “use WMI to do xyz…”
Such a question betrays an assumption. For example, it may be that the best way to accomplish a specific task is to not use WMI, but to use “native Windows PowerShell” functionality. Certainly, for example, I would use Get-Process to retrieve process information on my local computer—unless there was something that WMI would do differently or provide an alternate capability.
At times, I will clarify a person’s question, intention, and goals. At other times, I will directly answer the question, and then suggest a better way to accomplish what I think the goal is. Other times, I will answer what I think their question is and be done with it.
When a person asks about Windows PowerShell commands, are they really talking about native Windows PowerShell commands (such as the language statements For, Foreach, or Switch)? Or are they talking about Windows PowerShell cmdlets? Or are they talking about a string of Windows PowerShell cmdlets that taken together become a unique Windows PowerShell command?
When I am writing my Windows PowerShell books (such as my book, Windows PowerShell Best Practices), I tend to call a collection of Windows PowerShell cmdlets that are strung together to accomplish a specific task in a Windows PowerShell command.
But at other times, I actually vary my answer according to what I perceive to be the level of expertise of the questioner. For example, often people will come to me after I have spoken at a conference (such as the IT Pro Camp in Jacksonville where Teresa and I will be speaking this Saturday). If they ask something like, “I know nothing about Windows PowerShell. Can you tell me the most basic Windows PowerShell commands?” I will not necessarily take the time to tell them that they are probably asking about cmdlets, not commands.

With this in mind, the following chart lists Windows PowerShell command aliases, the Windows PowerShell cmdlet name, and a description of what the command actually does.

Command alias

Cmdlet name

Description of command

%

ForEach-Object

Performs an operation against each item in a collection of input objects.

?

Where-Object

Selects objects from a collection based on their property values.

ac

Add-Content

Appends content, such as words or data, to a file.

asnp

Add-PSSnapIn

Adds one or more Windows PowerShell snap-ins to the current session.

cat

Get-Content

Gets the contents of a file.

cd

Set-Location

Sets the current working location to a specified location.

chdir

Set-Location

Sets the current working location to a specified location.

clc

Clear-Content

Deletes the contents of an item, but does not delete the item.

clear

Clear-Host

Clears the display in the host program.

clhy

Clear-History

Deletes entries from the command history.

cli

Clear-Item

Deletes the contents of an item, but does not delete the item.

clp

Clear-ItemProperty

Deletes the value of a property but does not delete the property.

cls

Clear-Host

Clears the display in the host program.

clv

Clear-Variable

Deletes the value of a variable.

cnsn

Connect-PSSession

Reconnects to disconnected sessions

compare

Compare-Object

Compares two sets of objects.

copy

Copy-Item

Copies an item from one location to another.

cp

Copy-Item

Copies an item from one location to another.

cpi

Copy-Item

Copies an item from one location to another.

cpp

Copy-ItemProperty

Copies a property and value from a specified location to another location.

curl

Invoke-WebRequest

Gets content from a webpage on the Internet.

cvpa

Convert-Path

Converts a path from a Windows PowerShell path to a Windows PowerShell provider path.

dbp

Disable-PSBreakpoint

Disables the breakpoints in the current console.

del

Remove-Item

Deletes files and folders.

diff

Compare-Object

Compares two sets of objects.

dir

Get-ChildItem

Gets the files and folders in a file system drive.

dnsn

Disconnect-PSSession

Disconnects from a session.

ebp

Enable-PSBreakpoint

Enables the breakpoints in the current console.

echo

Write-Output

Sends the specified objects to the next command in the pipeline. If the command is the last command in the pipeline, the objects are displayed in the console.

epal

Export-Alias

Exports information about currently defined aliases to a file.

epcsv

Export-Csv

Converts objects into a series of comma-separated (CSV) strings and saves the strings in a CSV file.

epsn

Export-PSSession

Imports commands from another session and saves them in a Windows PowerShell module.

erase

Remove-Item

Deletes files and folders.

etsn

Enter-PSSession

Starts an interactive session with a remote computer.

exsn

Exit-PSSession

Ends an interactive session with a remote computer.

fc

Format-Custom

Uses a customized view to format the output.

fl

Format-List

Formats the output as a list of properties in which each property appears on a new line.

foreach

ForEach-Object

Performs an operation against each item in a collection of input objects.

ft

Format-Table

Formats the output as a table.

fw

Format-Wide

Formats objects as a wide table that displays only one property of each object.

gal

Get-Alias

Gets the aliases for the current session.

gbp

Get-PSBreakpoint

Gets the breakpoints that are set in the current session.

gc

Get-Content

Gets the contents of a file.

gci

Get-ChildItem

Gets the files and folders in a file system drive.

gcm

Get-Command

Gets all commands.

gcs

Get-PSCallStack

Displays the current call stack.

gdr

Get-PSDrive

Gets drives in the current session.

ghy

Get-History

Gets a list of the commands entered during the current session.

gi

Get-Item

Gets files and folders.

gjb

Get-Job

Gets Windows PowerShell background jobs that are running in the current session.

gl

Get-Location

Gets information about the current working location or a location stack.

gm

Get-Member

Gets the properties and methods of objects.

gmo

Get-Module

Gets the modules that have been imported or that can be imported into the current session.

gp

Get-ItemProperty

Gets the properties of a specified item.

gps

Get-Process

Gets the processes that are running on the local computer or a remote computer.

group

Group-Object

Groups objects that contain the same value for specified properties.

gsn

Get-PSSession

Gets the Windows PowerShell sessions on local and remote computers.

gsnp

Get-PSSnapIn

Gets the Windows PowerShell snap-ins on the computer.

gsv

Get-Service

Gets the services on a local or remote computer.

gu

Get-Unique

Returns unique items from a sorted list.

gv

Get-Variable

Gets the variables in the current console.

gwmi

Get-WmiObject

Gets instances of Windows Management Instrumentation (WMI) classes or information about the available classes.

h

Get-History

Gets a list of the commands entered during the current session.

history

Get-History

Gets a list of the commands entered during the current session.

icm

Invoke-Command

Runs commands on local and remote computers.

iex

Invoke-Expression

Runs commands or expressions on the local computer.

ihy

Invoke-History

Runs commands from the session history.

ii

Invoke-Item

Performs the default action on the specified item.

ipal

Import-Alias

Imports an alias list from a file.

ipcsv

Import-Csv

Creates table-like custom objects from the items in a CSV file.

ipmo

Import-Module

Adds modules to the current session.

ipsn

Import-PSSes
sion

Imports commands from another session into the current session.

irm

Invoke-RestMethod

Sends an HTTP or HTTPS request to a RESTful web service.

ise

powershell_ise.exe

Explains how to use the PowerShell_ISE.exe command-line tool.

iwmi

Invoke-WMIMethod

Calls Windows Management Instrumentation (WMI) methods.

iwr

Invoke-WebRequest

Gets content from a web page on the Internet.

kill

Stop-Process

Stops one or more running processes.

lp

Out-Printer

Sends output to a printer.

ls

Get-ChildItem

Gets the files and folders in a file system drive.

man

help

Displays information about Windows PowerShell commands and concepts.

md

mkdir

Creates a new item.

measure

Measure-Object

Calculates the numeric properties of objects, and the characters, words, and lines in string objects, such as files of text.

mi

Move-Item

Moves an item from one location to another.

mount

New-PSDrive

Creates temporary and persistent mapped network drives.

move

Move-Item

Moves an item from one location to another.

mp

Move-ItemProperty

Moves a property from one location to another.

mv

Move-Item

Moves an item from one location to another.

nal

New-Alias

Creates a new alias.

ndr

New-PSDrive

Creates temporary and persistent mapped network drives.

ni

New-Item

Creates a new item.

nmo

New-Module

Creates a new dynamic module that exists only in memory.

npssc

New-PSSessionConfigurationFile

Creates a file that defines a session configuration.

nsn

New-PSSession

Creates a persistent connection to a local or remote computer.

nv

New-Variable

Creates a new variable.

ogv

Out-GridView

Sends output to an interactive table in a separate window.

oh

Out-Host

Sends output to the command line.

popd

Pop-Location

Changes the current location to the location most recently pushed to the stack. You can pop the location from the default stack or from a stack that you create by using the Push-Location cmdlet.

ps

Get-Process

Gets the processes that are running on the local computer or a remote computer.

pushd

Push-Location

Adds the current location to the top of a location stack.

pwd

Get-Location

Gets information about the current working location or a location stack.

r

Invoke-History

Runs commands from the session history.

rbp

Remove-PSBreakpoint

Deletes breakpoints from the current console.

rcjb

Receive-Job

Gets the results of the Windows PowerShell background jobs in the current session.

rcsn

Receive-PSSession

Gets results of commands in disconnected sessions.

rd

Remove-Item

Deletes files and folders.

rdr

Remove-PSDrive

Deletes temporary Windows PowerShell drives and disconnects mapped network drives.

ren

Rename-Item

Renames an item in a Windows PowerShell provider namespace.

ri

Remove-Item

Deletes files and folders.

rjb

Remove-Job

Deletes a Windows PowerShell background job.

rm

Remove-Item

Deletes files and folders.

rmdir

Remove-Item

Deletes files and folders.

rmo

Remove-Module

Removes modules from the current session.

rni

Rename-Item

Renames an item in a Windows PowerShell provider namespace.

rnp

Rename-ItemProperty

Renames a property of an item.

rp

Remove-ItemProperty

Deletes the property and its value from an item.

rsn

Remove-PSSession

Closes one or more Windows PowerShell sessions (PSSessions).

rsnp

Remove-PSSnapin

Removes Windows PowerShell snap-ins from the current session.

rujb

Resume-Job

Restarts a suspended job

rv

Remove-Variable

Deletes a variable and its value.

rvpa

Resolve-Path

Resolves the wildcard characters in a path, and displays the path contents.

rwmi

Remove-WMIObject

Deletes an instance of an existing Windows Management Instrumentation (WMI) class.

sajb

Start-Job

Starts a Windows PowerShell background job.

sal

Set-Alias

Creates or changes an alias (alternate name) for a cmdlet or other command element in the current Windows PowerShell session.

saps

Start-Process

Starts one or more processes on the local computer.

sasv

Start-Service

Starts one or more stopped services.

sbp

Set-PSBreakpoint

Sets a breakpoint on a line, command, or variable.

sc

Set-Content

Replaces the contents of a file with contents that you specify.

select

Select-Object

Selects objects or object properties.

set

Set-Variable

Sets the value of a variable. Creates the variable if one with the requested name does not exist.

shcm

Show-Command

Creates Windows PowerShell commands in a graphical command window.

si

Set-Item

Changes the value of an item to the valu

PowerShell is a command-line interface for Windows 10 and 11. It provides a powerful scripting environment for automating system administration tasks. Built on the .NET Framework, it enables you to access and manipulate objects in Windows more easily and concisely than traditional shells, such as the Command Prompt. PowerShell commands, which are also called ‘cmdlets’, let you interact with your operating system like a pro and simplify complex tasks. Below is a list of all the essential commands for this powerful tool that will help you accomplish basic and advanced tasks.

The PowerShell interface consists of a console window and an integrated scripting environment (ISE). With its intuitive syntax and robust functionality, PowerShell enables users to perform a myriad of operations such as managing files and folders, manipulating registry entries, configuring network settings, executing remote management actions, or even accessing Active Directory resources. From basic administrative tasks like creating new user accounts or restarting services to more advanced functions like auditing security permissions or querying database information through SQL Server cmdlets – the possibilities are virtually limitless with PowerShell.

In this guide, we’ll introduce you to the basics of working with Windows PowerShell. We’ll start with an overview of the PowerShell console and its default settings. Then we’ll dive into working with cmdlets (command-lets) or commands which are the basic building blocks of any PowerShell script. There are commands for almost any system-level task. For example, you can use $PSVersionTable to check the PowerShell version installed on your computer.check windows powershell version with command

In most cases, people use the terms ‘command’ and ‘cmdlet’ synonymously. Both work like instructions for PowerShell telling it to perform specific tasks. However, there are a few differences between commands and cmdlets that you should keep in mind.

Below are some basic PowerShell terms and shortcut keys you should know, especially if you are a beginner. It is easy to launch this command-line tool but there are 17 ways to open PowerShell in Windows 10 and 11.

PowerShell commands and cmdlets form an extensive repertoire of tools that empower automation, streamline administrative tasks, and manipulate computer systems with precision. The following useful PowerShell commands are essential for any beginner or system admin seeking to optimize their efficiency in managing Windows environments.

Command name/Cmdlet Alias Description
Add-Content ac Adds content to the specified files. For instance, you can add words to a file.
Add-PSSnapIn asnp Adds PowerShell snap-ins to the current session.
Clear-Content clc Deletes the contents of a file while retaining the file.
Clear-History clhy Deletes specific entries from the command history.
Clear-Host cls, clear Removes all text (commands and output) from the current display.
Clear-ItemProperty clp Clears the value of a property.
Clear-Variable clv Clears the value of a variable.
Compare-Object compare, dif Compares two sets of objects directly by generating reports on the differences between the objects.
Connect-PSSession cnsn Reconnects to the disconnected sessions.
Copy-Item copy, cp, cpi Copies files and folders from a source file path to the destination file path.
Copy-ItemProperty cpp Copies the value of a property from a specified location to another location.
Disable-PSBreakpoint dbp Disables the breakpoints in the current PowerShell console.
Disconnect-PSSession dnsn Disconnects from a PowerShell session.
Enable-PSBreakpoint ebp Enables the breakpoints in the current PowerShell console.
Enter-PSSession etsn Starts a PowerShell session with a remote computer.
Exit-PSSession exsn Ends a PowerShell session with a remote computer.
Export-Alias epal Exports information about currently defined aliases to a file.
Export-Csv epcsv Converts objects into a series of character-separated values and saves the strings in a CSV file.
Export-PSSession epsn Exports cmdlets and functions from another session on a computer and saves them in a PowerShell module.
ForEach-Object %, foreach Performs modification or formatting on every item in a specified group of input objects (or items).
Format-Custom fc Uses a customized view to display objects while retaining their basic structure.
Format-List fl Formats the output of a command as a list of properties, showing each property on a new line.
Format-Table ft Formats the output into table form.
Get-Alias gal Gets the alias names for the cmdlets, functions, and scripts for the current session in PowerShell. If you want to find out or check the alias for a specific cmdlet, you can use Get-Alias -Definition cmdlet-name or gal -d cmdlet-name.
Get-ChildItem gci, dir, ls Gets the files and folders from one or more specified locations, such as a file system directory, registry hive, or certificate store.
Get-Command gcm Displays the list of all PowerShell commands and functions.
Get-Content gc, type Gets the contents from a file without opening it and returns each text file line as a string object.
Get-Date Gets the current date and time.
Get-Help Helps you to get to know all the PowerShell commands, their parameters, functions, scripts, workflows, etc.
Get-History h, ghy, history Displays the list of the previous commands used in the current session.
Get-HotFix Gets hotfixes or updates that have been installed on either the local computer or remote computer.
Get-Item gi Gets files and folders at the specified location but doesn’t get the contents of the item unless you use a wildcard (*).
Get-ItemProperty gp Gets the registry entries or values in the readable format in the console.
Get-Job gjb Gets the list of jobs running in the background, and those that have completed in the current session.
Get-Location gl, pwd Gets an object that represents the current directory within PowerShell.
Get-Member gm Displays the properties, methods, and different members of an object.
Get-Module gmo Displays the list of all the modules that are loaded behind the scene. You can use the cmdlet Get-Module -ListAvailable to view the list of all available modules. A module is a collection of cmdlets, variables, functions, and workflows.
Get-PSBreakpoint gbp  Retrieves all current breakpoints that are set in the current session. This cmdlet can help you debug PowerShell.
Get-PSCallStack gcs Displays the call stack or all commands executed in the current session. With this cmdlet, you can see a history of all commands run as part of a single execution step.
Get-PSDrive gdr Displays the variety of drives exposed by Windows PowerShell in the current session.
Get-PSSession gsn Displays the sessions created in the current Windows PowerShell session on local and remote computers.
Get-PSSnapIn gsnp Displays the Windows PowerShell snap-in.
Get-Process ps, gps Retrieves the list of all running applications and processes on a local or remote computer. It shows the process owner, the process ID, or even where on disk the process is located.
Get-Service gsv Displays the list of all installed services, their status (such as running or stopped), and startup type on a local or remote computer. You can use parameters to include or exclude services.
Get-Unique gu Returns unique items from a sorted list. PowerShell cmdlet Select-Object -Unique does the same job but it’s a bit different because it does not require objects to be pre-sorted.
Get-Variable gv Displays the names and the values of the PowerShell variables in the current console.
Get-WmiObject gwmi Searches for different WMI (Windows Management Instrumentation) classes on a system. Using this cmdlet, you can get any information about a Windows computer and its components.
Group-Object group Groups similar objects together based on common properties.
Import-Alias ipal Imports an alias list from a specified file in PowerShell.
Import-Csv ipcsv Fetch the information contained in a CSV file and create a table-like structure.
Import-Module ipmo Imports modules to the current session.
Import-PSSession ipsn Imports command from a remote computer into the current session.
Invoke-Command icm Runs a command or a script and returns the results as an expression on a local or remote computer.
Invoke-Expression iex Runs a specified string as a command on the local computer.
Invoke-History r, ihy Runs commands from the command history in the current session.
Invoke-Item ii Runs or opens the specified item (depending on the file type) in the program associated with the file type.
Invoke-RestMethod irm Sends HTTP or HTTPS requests using various HTTP methods to REST API endpoints. It is an alternative to Invoke-WebRequest.
Invoke-WMIMethod iwmi Launches a create process WMI(Windows Management Instrumentation) method of the WIN32_Process class.
Invoke-WebRequest curl, iwr, wget Sends HTTP, HTTPS, FTP, and FILE requests to a web page or web service on the Internet.
mkdir md Creates a new directory.
Measure-Object measure Measures how large an object is by calculating the numeric properties of the object in terms of characters, words, and lines.
Move-Item mi, mv, move Moves a file, folder, or registry along with its properties, contents, and child items from one location to another location.
Move-ItemProperty mp Moves the property of an item from one place to another.
New-Alias nal Creates a new alias.
New-Item ni Creates a new item.
New-Module nmo Creates a dynamic module from a script block.
New-PSDrive ndr, mount Creates a new temporary or persistent drive with various Windows PowerShell provider types. To create a new PSDrive you’ll need to provide a drive name, the provider, and the location.
New-PSSession nsn Creates a persistent connection to a local or remote computer.
New-PSSessionConfigurationFile npssc Creates a persistent PowerShell connection to a local or remote host.
New-Variable nv Creates a new variable by simply assigning it a value.
Out-GridView ogv Displays data as an interactive table (the GUI format) that can be filtered or sorted based on different criteria.
Out-Host oh Sends output to the Windows PowerShell host for display.
Out-Printer lp Sends output to the connected printer.
Pop-Location popd Changes the current location to the path at the top of the directory stack.
Push-Location pushd Pushes or adds the current location to the top of a location stack called ‘Paths’ and sets the C:\Program Files\PowerShell\ directory as the current directory.
Receive-Job rcjb Fetches the results of Windows PowerShell background jobs, such as those started by using the Start-Job cmdlet.
Receive-PSSession rcsn Fetches the results of PowerShell sessions that were disconnected intentionally using the Disconnect-PSSession cmdlet.
Remove-Item del, erase, rd, ri, rm, rmdir Deletes items from specific locations like files, folders, registry keys, variables, and functions. You can use parameters to include or exclude items. You can use this command to delete files with very long names using PowerShell.
Remove-ItemProperty rp Deletes registry values and stored data of an item.
Remove-Job rjb Deletes a Windows PowerShell background job. Deletes n stopped or completed background job in PowerShell, You need to mention the ‘-id n’ or ‘-name xxx’ to specify the job you want to remove.
Remove-Module rmo Deletes module objects (cmdlets and functions) from the PowerShell session.
Remove-PSBreakpoint rbp Disables the breakpoint from the current console so they are not hit when the script runs.
Remove-PSDrive rdr Removes temporary PowerShell drives created with New-PSDrive. To remove multiple drives together, you should separate them using a comma (,).
Remove-PSSession rsn Closes PowerShell sessions, stops any running commands in the current session, ends the PSSession, and also closes the connection between the local and remote computers.
Remove-PSSnapin rsnp Unloads a snap-in from the current PowerShell session.
Remove-Variable rv Removes the variable and its value defined in PowerShell.
Remove-WMIObject rwmi Removes a WMI (Windows Management Instrumentation) class.
Rename-Item ren, rni Renames items such as files and directories in a PowerShell provider namespace.
Rename-ItemProperty rnp Renames an item’s property without changing its value.
Resolve-Path rvpa Resolves the wildcard characters in a path and displays the items and containers at the location specified by the path.
Resume-Job rujb Resumes a suspended job.
Select-Object select Selects specific properties from an object or dataset.
Select-String sls Searches for text and text patterns in input strings and files.
Set-Alias sal Creates or changes an alias (alternate name) for a cmdlet or other command element in the current PowerShell session.
Set-Content sc Writes or replaces the content in an item with new content.
Set-Item si Changes the value of an item to the value specified in the command.
Set-ItemProperty sp Sets the value of the property of the specified object.
Set-Location cd, chdir, sl Changes the current directory or location to a location you specify.
Set-PSBreakpoint sbp Sets the line breakpoint in the script.
Set-Variable set, sv Assigns a value to a variable or changes the current value. If the specified variable doesn’t exist, the cmdlet will create it.
Show-Command shcm Lets you find the parameters and syntax of other PowerShell cmdlets graphically.
Sort-Object sort Sorts objects in ascending or descending order based on the values of properties.
Start-Job sajb Starts a Windows PowerShell background job without interacting with the current session.
Start-Process saps, start Starts single or multiple processes on the local computer.
Start-Service sasv Start one or more stopped services on the system.
Start-Sleep sleep Suspends the activity in a script or session for a certain period of time.
Stop-Job spjb Stops all or stop selected jobs based on their name, ID, instance ID, or state.
Stop-Process kill Forcibly kills or stops the running processes.
Suspend-Job sujb Suspends workflow jobs by temporarily interrupting or pausing them.
Wait-Job wjb Suspends the command prompt until the PowerShell background tasks running in the session are complete.
Where-Object ?, where Filters objects based on their property values.
Write-Output echo, write Sends any object or data type, such as strings, integers, arrays, and complex objects to the next command in the pipeline.

When delving into the realm of systems administration, it is imperative to acquaint oneself with an extensive range of PowerShell commands and cmdlets. If you think I have missed any essential command in this list, please drop a comment.

PowerShell is a useful Windows command-line language version that helps you seamlessly perform and automate critical tasks on your systems. But how can you perform these tasks and make the most of PowerShell on your Windows system?

Don’t worry — we’ve compiled a PowerShell cheat sheet documenting PowerShell syntax and all the PowerShell commands to help you optimize PowerShell and even prepare for job interviews.

Download Our PowerShell Cheat Sheet PDF Here.

PowerShell Cheat Sheet

Let’s start with a quick introduction to Windows 10 PowerShell commands.

PowerShell Basics

PowerShell is a cross-platform and a commonly used task automation solution combining the power of the command-line shell, a scripting language, and a configuration management framework. You can run PowerShell on Windows, Linux, and macOS operating systems. Unlike other available shells that only accept and return data, PowerShell accepts and returns .NET objects.

This shell comes with the following features.

  • Robust command-line history
  • Extensive features, like tab completion and command prediction
  • Command and parameter aliases
  • Pipeline for changing commands
  • In-console help system, like Unix man pages

Considering the features of any scripting language, you can use PowerShell to automate the system management process and task. It lets you build, test, and deploy solutions in CI/CD environments.

PowerShell is built on the .NET Common Language Runtime (CLR), which means all the inputs and outputs are .NET objects. You do not have to parse text output to retrieve information from it.

The PowerShell scripting language comes with the following features.

  • Functions, classes, objects, and modules
  • Easy formatting system for providing clear output for enhanced readability
  • Built-in support for different data formats, such as CSV, JSON, and XML
  • Type system for creating dynamic types

Now, let’s get into some useful PowerShell commands.

Introduction to Windows PowerShell 5.1

PowerShell Commands Cheat Sheet

cmdlets

Cmdlets are PowerShell’s internal commands. These cmdlets will return one or more objects to the pipeline where at the end of that pipeline, we mention some properties of the objects in the following table to see their values displayed on the screen.

Command

Description

Get-Help

This command allows you to get support with PowerShell.

Get-PSdrive

This command offers you a list of available PSDrives, such as c, env, hklm, hkcu, alias, etc.

Get-ChildItem

In any registry, children are the subkeys of the current key. To get the required details, you can use the following command.

Get-ChildItem -recurse

Run this command to list all the children recursively of the current PSdrive, folder, or registry key.

Get-ChildItem -rec -force

Use this command To include the hidden folders (directories).

(Get-ChildItem).name or Get-ChildItem -name

Run any of these commands to get the list file and directory names in the current folder.

(Get-ChildItem).count 

Use this command to get the number of entries in the collection of objects returned by the Get-Children.

PSdrives

PSdrives are the collection of entities grouped together so they can be accessed as a filesystem drive. The “PSprovider” does this grouping.

By default, a PS session can access several PSdrives including c:, env:, alias:, and HKLM:, where c: refers to the usual Windows c-drive; env: is the space of Windows environmental variables; alias: is the collection of cmdlet aliases; and HKLM is a hive in the registry.

Any PS session will enter the user’s home folder. If you want to switch from a PS session to another PSdrive and retrieve the information from that drive, consider the following commands:

Commands

Description

Switching to env-

The prompt character will change to the “ENV:\>”. Set-Location env by running the following command:

Set-Location env-
Env:\> Get-Childitem

This command will get you all the environment variables.

Env:\> Get-Childitem userprofile

Use this command to get the environment variables of “userprofile.”

Env:\> Set-Location alias:

Run the following command to change the prompt character to “Alias.”

Alias:\> Get-Childitem

Run this command to get all the children of all aliases.

Alias:\> Set-Location C:\

Use this command to get the “C:/>” prompt again, back to the default drive.

C:\Users\user_name>$alias:ls

Run this command to find what alias “ls” stands for.

Pipelines

Cmdlets uses the pipelines to pass the objects but not the character streams like Unix. The pipeline character is | (ASCII 124), followed by a command that handles the output passed through the pipeline. The pipeline consists of the following three stages.

Get-ChildItem *.txt | Where-Object length -lt 1000 | Sort-Object length

The following table highlights some of the basic pipeline commands:

Command

Description

(Get-Item /Users/praashibansal/Desktop).lastwritetime.year

Easily sets the value of the ‘lastwritetime.year’ property to the present date and time without affecting the file’s content.

(Get-ChildItem data.txt.rtf -name).name # -> null

Provides an empty result

"data.txt.rtf" | Rename-Item -NewName "data_new.txt.rtf"

Changes the old file names and file extensions to the new ones

Get-ChildItem data.txt | Rename-Item -new {$_.name}

A trivial renaming command that invokes an automatic variable

Get-ChildItem data.txt.rtf -name | Rename-Item -new {$_.name}

If the piped object $_ doesn’t have the member property (name), you will receive an error, as parameter $_.name is null

Get-ChildItem | Select-Object basename | Sort-Object *

Displays the list of the names of all the files that are present in the current folder sorted in alphabetical order.

Move-Item *.txt subdirectory

Moves all the files to the folder subdirectory

Get-ChildItem *.txt | Move-Item ..\

Gives the error message that Move-Item lacks input

Alias

Cmdlets come with several aliases. The following table highlights a few of aliases, along with their descriptions:

Command

Description

Add-Content

Appends value to a file

Get-Content

Finds file content in an array

Set-Location

Changes folder, key, or PS drive

Clear-Host

Clears console

Remove-Item

Delete files

Get-ChildItem -Path .\

Lists Folder, Key, or PSDrive Children

Write-Output

Sends the array to the console, pipeline, or redirect it to the file

Foreach-Object

Traverses each object in a pipeline

Format-Table

Formats the table with selected properties for each object in each column

Format-List

Formats the process properties by name

Get-Alias

Provides Cmdlet Alias

Get-Command

Provides you with commands from the current session only

Get-Member

Retrieves all the object members

Get-ItemProperty .\data.txt | Format-List

Provides the specified item’s properties

Get-ItemPropertyValue -Path '.\data.txt' -Name LastWriteTime

Gives the current value for a specified property while using the name parameter

Get-Variable m*

Finds session variable names and sessions

New-Item -Path .\ -Name "testfile1.txt" -ItemType "file" -Value "This is a text string."

Creates a new file, directory, symbolic link, registry key, or registry entry

Get-Process

Gives the entire list of all the running processes

Get-Location

Provides the current directory’s or registry key’s location

Rename-Item -Path “old_name” -NewName “new_name”

Renames the old item name with the new name

Remove-Item .\testfile1.txt

Removes the specified directory, files, or registry keys

Remove-Variable 

Removes the specified variable

Start-Sleep

Suspends an activity for a specified period of time

Operators

  • Arithmetic Operators

Operator

Description

Example

+

Adds integers; concatenates

6 + 2

 

strings, arrays, and hash tables.

«file» + «name»

@(1, «one») + @(2.0, «two»)

@{«one» = 1} + @{«two» = 2}

+

Makes a number out of an object

123

Subtracts one value from another

6 — 2

Calculates the opposite number

— -6

   

(Get-Date).AddDays(-1)

*

Multiply numbers or copy strings and arrays for a specified number of times

6 * 2

   

@(«!») * 4

   

«!» * 3

/

Divides two values

6 / 2

%

Modulus — returns the remainder of a division operation

7 % 2

-band

Bitwise AND

5 -band 3

-bnot

Bitwise NOT

-bnot 5

-bor

Bitwise OR

5 -bor 0x03

-bxor

Bitwise XOR

5 -bxor 3

-shl

Shifts bits to the left

102 -shl 2

-shr

Shifts bits to the right

102 -shr 2

  • Operator Precedence

Precedence

Operator

Description

1

()

Parentheses

2

For a negative number or unary operator

3

*, /, %

For multiplication and division

4

+,-

For addition and subtraction

5

-band, -bnot, -bor, -bxor, -shr, and -shl

For bitwise operations

  • Assignment Operators

Operator

Description

=

Sets a variable’s value to the specified value

+=

Increases a variable’s value by the specified value or appends the specified value to the existing value

-=

Decreases a variable’s value by a specified value

*=

Multiplies a variable’s value by a specified value, or appends the specified value to the existing value

/=

Divides a variable’s value by a specified value

%=

Divides the variable’s value by a specified value and then assigns the remainder (modulus) to the variable.

#ERROR!

Increases a variable’s value, assignable property, or array element by 1.

Decreases the variable’s value, assignable property, or array element by 1.

  • Comparison Operators

Type

Operator

Comparison test

Equality

-eq

equals

 

-ne

not equals

 

-gt

greater than

 

-ge

greater than or equal

 

-lt

less than

 

-le

less than or equal

Matching

-like

string matches wildcard pattern

 

-notlike

string doesn’t match wildcard pattern

 

-match

string matches regex pattern

 

-notmatch

string doesn’t match regex pattern

Replacement

-replace

replaces strings matching a regex pattern

Containment

-contains

collection contains a value

 

-notcontains

collection doesn’t contain a value

 

-in

value is in a collection

 

-notin

value is not in a collection

Type

-is

both objects are the same type

 

-isnot

objects are not the same type

  • Logical Operators

Operator

Description

Example

-and

Logical AND. TRUE when both statements are true.

(1 -eq 1) -and (1 -eq 2)

FALSE

-or

Logical OR. TRUE when either of the statements is TRUE.

(1 -eq 1) -or (1 -eq 2)

TRUE

-xor

Logical EXCLUSIVE OR. TRUE when only one statement is TRUE.

(1 -eq 1) -xor (2 -eq 2)

FALSE

-not

Logical not. Negates the statement that follows.

-not (1 -eq 1)

FLASE

!

Same as -not

!(1 -eq 1)

FALSE

  • Redirection Operator

Operator

Description

Syntax

>

Send specified stream to a file

n>

>>

Append specified stream to a file

n>>

>&1

Redirects the specified stream to the Success stream

n>&1

  • Type Operators

Operator

Description

Example

-isNot

Returns TRUE when the input not an instance of the

specified.NET type.

(get-date) -isNot [DateTime]

FALSE

-as

Converts the input to the specified .NET type.

«5/7/07» -as [DateTime]

Monday, May 7, 2007 00:00:00

Some Other Operators

Operator

Description

() Grouping Operator

Allows you to override operator precedence in expressions

&() Subexpression Operator

Gives you the result of one or more statements

@( ) Array Subexpression Operator

Returns the results of one or more statements in the form of arrays.

& Background Operator

The pipeline before & is executed by this command in a Powershell job.

[] Cast Operator

Converts objects to the specific type.

Regular Expressions

A regular expression is a pattern that is used to match text that includes literal characters, operators, and other constructs. PowerShell regular expressions are case-insensitive by default.

Method

Case Sensitivity

Select-String

use -CaseSensitive switch

switch statement

use the -casesensitive option

operators

prefix with ‘c’ (-cmatch, -csplit, or -creplace)

  • Character Literals

A regular expression can be a literal character or a string.

  • Character Groups

These allow you to match any number of characters one time, while [^character group] only matches characters NOT in the group.

  • Character Range

A pattern can also be a range of characters. The characters can be alphabetic [A-Z], numeric [0-9], or even ASCII-based [ -~] (all printable characters).

  • Numbers

The \d character class will match any decimal digit. Conversely, \D will match any non-decimal digit.

  • Word Character

The \w character class will match any word character [a-zA-Z_0-9]. To match any non-word character, use \W.

  • Wildcard

The period (.) is a wildcard character in regular expressions. It will match any character except a newline (\n).

  • Whitespace

Whitespace is matched using the \s character class. Any non-whitespace character is matched using \S. Literal space characters ‘ ‘ can also be used.

  • Escaping Characters

The backslash (\) is used to escape characters so the regular expression engine doesn’t parse them.

The following characters are reserved: []().\^$|?*+{}.

  • Substitution in Regular Expression.

The regular expressions with the -replace operator allows you to dynamically replace text using captured text.

<input> -replace <original>, <substitute>

Flow Control

  • ForEach-Object

ForEach-Object is a cmdlet that allows you to iterate through items in a pipeline, such as with PowerShell one-liners. ForEach-Object will stream the objects through the pipeline.

Although the Module parameter of Get-Command accepts multiple values that are strings, it will only accept them via pipeline input using the property name, or parameter input.

If you want to pipe two strings by value to Get-Command for use with the Module parameter, use the ForEach-Objectcmdlet:

$ComputerName = 'DC01', 'WEB01'

foreach ($Computer in $ComputerName) {

Get-ADComputer -Identity $Computer

}
  • For

A “for” loop iterates while a specified condition is true.

For example:

for ($i = 1; $i -lt 5; $i++) {

Write-Output "Sleeping for $i seconds"

Start-Sleep -Seconds $i

}

  • Do

There are two different “do” loops in PowerShell. Do Until runs while the specified condition is false.

Example 1:

$number = Get-Random -Minimum 1 -Maximum 10

do {

$guess = Read-Host -Prompt "What's your guess?"

if ($guess -lt $number) {

Write-Output 'Too low!'

}

elseif ($guess -gt $number) {

Write-Output 'Too high!'

}

}

until ($guess -eq $number)

Example 2:

$number = Get-Random -Minimum 1 -Maximum 10

do {

$guess = Read-Host -Prompt "What's your guess?"

if ($guess -lt $number) {

Write-Output 'Too low!'

} elseif ($guess -gt $number) {

Write-Output 'Too high!'

}

}

while ($guess -ne $number)

  • While

Similar to the Do While loop, a While loop runs as long as the specified condition is true. The difference however, is that a While loop evaluates the condition at the top of the loop before any code is run. So, it doesn’t run if the condition evaluates to false.

For example:

$date = Get-Date -Date 'November 22'

while ($date.DayOfWeek -ne 'Thursday') {

$date = $date.AddDays(1)

}

Write-Output $date

Variables

PowerShell allows you to store all types of values. For example, it can store command results and command expression elements like names, paths, and settings. Here are some of PowerShell’s different variables.

  • User-created variables: These are created and maintained by the user. The variables you create at the PowerShell command line will only exist until the PowerShell window is open. When you close the PowerShell window, these variables are deleted. If you want to save a variable, you need to add it to your PowerShell profile. You can create variables and declare them with three different scopes: global, script, or local.
  • Automatic variables: These variables store the state of PowerShell and are created by PowerShell. Only PowerShell can change their values as required to maintain accuracy. Users can’t change these variables’ value. For example, the $PSHOME variable will store the path to the PowerShell installation directory.
  • Preference variables: These variables store user preferences for PowerShell and are created by PowerShell. These variables are populated with default values and can be changed by the users. For example, the $MaximumHistoryCount variable specifies the maximum number of entries in the session history.

To create a new variable, you need to use an assignment statement and assign a value to the variable. There is no need to declare the variable before using it. The default value of all variables is $null.

For example:

$MyVariable = 1, 2, 3

$MyVariable

Function

  • Naming Your Function

Use a Pascal case name with an approved verb and a singular noun to name a function. You can get a list of approved verbs by running Get-Verb:

Get-Verb | Sort-Object -Property Verb

  • Creating a Simple Function

Use a function keyword followed by the function name to create a simple function. Then, use an open and closing curly brace. The function will execute code contained within those curly braces.

For example:

function Get-Version {

$PSVersionTable.PSVersion

}

Working with Modules

A module is a package containing PowerShell members, such as cmdlets, providers, functions, workflows, variables, and aliases. You can implement package members in a PowerShell script, a compiled DLL, or both. PowerShell automatically imports the modules the first time you run any command in an installed module. You can use the commands in a module without setting up or profile configuration.

  • How to Use a Module

To use any module, you need to first install them. Then, find the command that comes with the module and use them.

  • Installing a Module

If you get a module as a folder, install it before you use it on the PowerShell command line. Some modules are preinstalled. You can use the following command to create a Modules directory for the current user:

New-Item -Type Directory -Path $HOME\Documents\PowerShell\Modules

Copy the entire module folder into the Modules directory. You can use any method to copy the folder, including Windows Explorer, Cmd.exe, and PowerShell.

  • Finding the Installed Modules

Run the following to find the modules installed in a default module location (not imported).

Get-Module -ListAvailable

  • Finding Commands in a Module

Run the following command to find a module’s commands:

Get-Command -Module <module-name>

Get-Command -Module Microsoft.PowerShell.Archive

  • Importing a Module

Run the following command with the proper module name:

Import-Module <module-name>
  • Removing a Module Name

You can run the following command with the proper module name:

Remove-Module <module-name>
  • View Default Module Locations

Use the following command to view default module locations:

$Env:PSModulePath
  • Add a Default Module Location

You can use the following command format:

$Env:PSModulePath = $Env:PSModulePath + ";<path>"
  • Add a Default Module Location on Linux or MacOS

Use the following to execute the same command as above, only with Linux or macOS:

$Env:PSModulePath += ":<path>"

Hash Tables

A hash table is a complex data structure to store data in the form of key-value pairs. We also refer to a hash table as a dictionary or associative array. To understand a hash table, consider a series of IP addresses and the respective computer names. A hash stores this data in the form of key-value pairs, where IP addresses refer to keys and computer names to their corresponding values.

The hash table syntax is as follows:

@{ <name> = <value>; [<name> = <value> ] ...}

An ordered dictionary’s syntax is as follows:

[ordered]@{ <name> = <value>; [<name> = <value> ] ...}
  • Creating Hash Tables

If you want to create a hash table, follow these steps:

  • Start the hash table with an at sign (@) and enclose it in curly braces ({}).
  • A hash table should contain at least one key-value pair, and hence, enter the data after creating a hash table.
  • Separate key from its value using an equal sign (=).
  • Separate the key/value pairs in a hash table with a semicolon (;).
  • Enclose the space between the keys in quotation marks. Values must be valid PowerShell expressions. Also, enclose strings in quotation marks, even if there are no spaces between them.
  • Save a hash table as a variable to manage it efficiently.
  • When assigning an ordered hash table to a variable, place the [ordered] attribute before the @ symbol. If you place it before the variable name, the command fails.

For example:

$hash = @{}

$hash = @{ Number = 1; Shape = "Square"; Color = "Blue"}

[hashtable]$hash = [ordered]@{

Number = 1; Shape = "Square"; Color = "Blue"}

$hash

  • Adding and Removing Keys and Values

To add keys and values to a hash table, use the following command format:

$hash[«<key>»] = «<value>»

For example, you can add a «Time» key with a value of «Now» to the hash table with the following statement format:

$hash["Time"] = "Now"

Or

$hash.Add("Time", "Now")

Or, you can remove the key with this statement format:

$hash.Remove("Time")

Asynchronous Event Handling

These cmdlets allow you to register and unregister event subscriptions and list the existing subscriptions. You can also list pending events and handle or remove them as desired.

PowerShell eventing cmdlets

Eventing Cmdlet name

Description

Register-ObjectEvent

This cmdlet registers an event subscription for events generated by .NET objects

Register-WmiEvent

Registers an event subscription for events generated by WMI objects

Register-EngineEvent

Registers an event subscription for events generated by PowerShell itself

Get-EventSubscriber

Gets a list of the registered event subscriptions in the session

Unregister-Event

Removes one or more of the registered event subscriptions

Wait-Event

Waits for an event to occur. This cmdlet can wait for a specific event or any event. It also allows a timeout to be specified, limiting how long it will wait for the event. The default is to wait forever.

Get-Event

Gets pending unhandled events from the event queue

Remove-Event

Removes a pending event from the event queue

New-Event

This cmdlet is called in a script to allow the script to add its own events to the event queue

Conclusion

Bottom line? A PowerShell cheat sheet is your one-stop-shop for everything related to PowerShell syntax and commands. In this Windows PowerShell commands cheat sheet, we’ve discussed all the basics to help even beginners navigate PowerShell.

Like any other programming language, you can use variables, and operators, create aliases and functions and even maintain flow control.

If you’re preparing for your upcoming interviews, keep this PowerShell 5.0 cheat sheet handy for quick reference with easy examples.

Interested in expanding your knowledge with Windows Command Line?

Check Out Our Windows Command Line Cheat Sheet

Frequently Asked Questions

1. How Do I Get a List of PowerShell Commands?

You can use the get-command.

2. How Many PowerShell Commands Are There?

There are over 200 commands in PowerShell.

3. How Do I Learn PowerShell for Beginners?

You might consider using Microsoft’s introductory guide to PowerShell. It includes easy language and simple examples to enhance your understanding.

4. Is Windows PowerShell the Same as Command Prompt?

The following table highlights the major differences between PowerShell and command prompt:

PowerShell

Command Prompt

Introduced in 2006

Introduced in 1981

Works with both batch commands and PowerShell cmdlets

Works only with Batch commands

Allows you to create aliases for cmdlets or scripts

Doesn’t support creating command aliases

Allows you to pass the output from a cmdlet to other cmdlets

doesn’t allow you to pass the output from a command to other commands

Output is in the form of an object

Output is just text

Can execute a sequence of cmdlets within a script

Requires one command to finish before another

Has programming libraries, as it’s built on .net framework.

No programming libraries

Seamless integration with WMI

Requires external plugin for WMI interaction

Supports Linux systems

Doesn’t support Linux systems

Runs all program types

Only runs console type programs

5. How Can I Make Command Prompt Default Instead of PowerShell?

Open Settings > Personalization > Taskbar. Now, turn the “Replace Command Prompt with Windows PowerShell» in the menu when I right-click the Start button, or press Windows key+X” option to “Off”.

People are also reading:

  • Best Python Courses
  • Best Python Certifications
  • Best Python Books
  • Top Python Projects
  • Top Python Interview Questions
  • Best Python Interpreters
  • Best way to learn python
  • How to Run a Python Script?
  • Difference between C# vs C++
  • Difference between Java vs C#
  • Python or Java
  • Ruby vs Python

Performs an operation against each item in a collection of input objects.

Selects objects from a collection based on their property values.

Appends content, such as words or data, to a file.

Adds one or more Windows PowerShell snap-ins to the current session.

Gets the contents of a file.

Sets the current working location to a specified location.

Sets the current working location to a specified location.

Deletes the contents of an item, but does not delete the item.

Clears the display in the host program.

Deletes entries from the command history.

Deletes the contents of an item, but does not delete the item.

Deletes the value of a property but does not delete the property.

Clears the display in the host program.

Deletes the value of a variable.

Reconnects to disconnected sessions

Compares two sets of objects.

Copies an item from one location to another.

Copies an item from one location to another.

Copies an item from one location to another.

Copies a property and value from a specified location to another location.

Gets content from a webpage on the Internet.

Converts a path from a Windows PowerShell path to a Windows PowerShell provider path.

Disables the breakpoints in the current console.

Deletes files and folders.

Compares two sets of objects.

Gets the files and folders in a file system drive.

Disconnects from a session.

Enables the breakpoints in the current console.

Sends the specified objects to the next command in the pipeline. If the command is the last command in the pipeline, the objects are displayed in the console.

Exports information about currently defined aliases to a file.

Converts objects into a series of comma-separated (CSV) strings and saves the strings in a CSV file.

Imports commands from another session and saves them in a Windows PowerShell module.

Deletes files and folders.

Starts an interactive session with a remote computer.

Ends an interactive session with a remote computer.

Uses a customized view to format the output.

Formats the output as a list of properties in which each property appears on a new line.

Performs an operation against each item in a collection of input objects.

Formats the output as a table.

Formats objects as a wide table that displays only one property of each object.

Gets the aliases for the current session.

Gets the breakpoints that are set in the current session.

Gets the contents of a file.

Gets the files and folders in a file system drive.

Displays the current call stack.

Gets drives in the current session.

Gets a list of the commands entered during the current session.

Gets Windows PowerShell background jobs that are running in the current session.

Gets information about the current working location or a location stack.

Gets the properties and methods of objects.

Gets the modules that have been imported or that can be imported into the current session.

Gets the properties of a specified item.

Gets the processes that are running on the local computer or a remote computer.

Groups objects that contain the same value for specified properties.

Gets the Windows PowerShell sessions on local and remote computers.

Gets the Windows PowerShell snap-ins on the computer.

Gets the services on a local or remote computer.

Returns unique items from a sorted list.

Gets the variables in the current console.

Gets instances of Windows Management Instrumentation (WMI) classes or information about the available classes.

Gets a list of the commands entered during the current session.

Gets a list of the commands entered during the current session.

Runs commands on local and remote computers.

Runs commands or expressions on the local computer.

Runs commands from the session history.

Performs the default action on the specified item.

Imports an alias list from a file.

Creates table-like custom objects from the items in a CSV file.

Adds modules to the current session.

Imports commands from another session into the current session.

Sends an HTTP or HTTPS request to a RESTful web service.

Explains how to use the PowerShell_ISE.exe command-line tool.

Calls Windows Management Instrumentation (WMI) methods.

Gets content from a web page on the Internet.

Stops one or more running processes.

Sends output to a printer.

Gets the files and folders in a file system drive.

Displays information about Windows PowerShell commands and concepts.

Calculates the numeric properties of objects, and the characters, words, and lines in string objects, such as files of text.

Moves an item from one location to another.

Creates temporary and persistent mapped network drives.

Moves an item from one location to another.

Moves a property from one location to another.

Moves an item from one location to another.

Creates temporary and persistent mapped network drives.

Creates a new dynamic module that exists only in memory.

New-PSSessionConfigurationFile

Creates a file that defines a session configuration.

Creates a persistent connection to a local or remote computer.

Sends output to an interactive table in a separate window.

Sends output to the command line.

Changes the current location to the location most recently pushed to the stack. You can pop the location from the default stack or from a stack that you create by using the Push-Location cmdlet.

Gets the processes that are running on the local computer or a remote computer.

Adds the current location to the top of a location stack.

Gets information about the current working location or a location stack.

Runs commands from the session history.

Deletes breakpoints from the current console.

Gets the results of the Windows PowerShell background jobs in the current session.

Gets results of commands in disconnected sessions.

Deletes files and folders.

Deletes temporary Windows PowerShell drives and disconnects mapped network drives.

Renames an item in a Windows PowerShell provider namespace.

Deletes files and folders.

Deletes a Windows PowerShell background job.

Deletes files and folders.

Deletes files and folders.

Removes modules from the current session.

Renames an item in a Windows PowerShell provider namespace.

Renames a property of an item.

Deletes the property and its value from an item.

Closes one or more Windows PowerShell sessions (PSSessions).

Removes Windows PowerShell snap-ins from the current session.

Deletes a variable and its value.

Resolves the wildcard characters in a path, and displays the path contents.

Deletes an instance of an existing Windows Management Instrumentation (WMI) class.

Starts a Windows PowerShell background job.

Creates or changes an alias (alternate name) for a cmdlet or other command element in the current Windows PowerShell session.

Starts one or more processes on the local computer.

Starts one or more stopped services.

Sets a breakpoint on a line, command, or variable.

Replaces the contents of a file with contents that you specify.

Selects objects or object properties.

Sets the value of a variable. Creates the variable if one with the requested name does not exist.

Creates Windows PowerShell commands in a graphical command window.

Changes the value of an item to the valu

  • Все коды ошибок синего экрана windows 10
  • Все команды для терминала windows
  • Все версии minecraft windows 10 edition
  • Все команды строки выполнить в windows
  • Все версии bootcamp для windows 7