Алиасы в PowerShell справочник с примерами на 2026 год

Вот четыре команды, которые решают 80 процентов вопросов про алиасы прямо сейчас. Просто скопируйте и выполните в PowerShell.

Get-Alias # посмотреть все алиасы

Get-Alias dir # узнать что скрывается за dir

Get-Alias -Definition Get-ChildItem # все сокращения для одной команды

Set-Alias ll Get-ChildItem # создать свой алиас за 5 секунд

В 80 процентах случаев помогает именно Get-Alias и понимание что % это ForEach-Object а ? это Where-Object.

Алиасы Powershell
Алиасы Powershell Алиас (англ. Alias) – в буквальном переводе означает “прозвище, кличка”.

Обновлено 06 марта 2026

Статья полностью переписана и расширена.

Почему возникают вопросы про алиасы и зачем они вообще нужны

За многие годы работы с Windows и PowerShell я вижу одну и ту же картину. Человек открывает чужой скрипт видит кучу % ? gci cat и думает что это какой-то китайский. Потом читает документацию и понимает что это просто сокращения. А потом сам начинает их использовать в консоли потому что экономит 3-4 секунды на каждой команде.

Алиасы появились чтобы людям с опытом *nix-систем было проще перейти на PowerShell. dir ls cat man cp mv rm, все это знакомые команды из Linux и они работают в PowerShell именно благодаря алиасам.

Но есть обратная сторона. В больших скриптах которые вы отдаете коллегам или кладете в репозиторий алиасы часто мешают. Код становится менее читаемым особенно если человек только начинает работать с PowerShell.

Как посмотреть все алиасы и найти нужный

Самая первая команда которую стоит запомнить.

Get-Alias

Вывод будет длинный поэтому обычно добавляют сортировку или фильтр.

Get-Alias | Sort-Object Name # по алфавиту

Get-Alias ? # что значит вопросительный знак

Get-Alias % # что значит процент

Get-Alias g* # все алиасы на букву g

Хотите узнать все сокращения для конкретной команды — используйте параметр Definition.

Get-Alias -Definition Get-ChildItem

Get-Alias -Definition Get-Process

На моей Windows 11 24H2 и PowerShell 7.5 команда Get-Alias -Definition Get-ChildItem обычно выдает gci dir ls.

Самые популярные встроенные алиасы с примерами использования

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

Алиас Полная команда Пример использования Где чаще всего нужен
? Where-Object ls | ? {$_.Length -gt 1MB} фильтрация вывода
% ForEach-Object Get-Process | % { $_.Name } обработка коллекции
gci / dir / ls Get-ChildItem gci -Recurse *.log просмотр файлов
cat / gc Get-Content cat error.log -Tail 50 чтение логов
cp Copy-Item cp file.txt D:\backup копирование
mv Move-Item mv *.tmp C:\Temp перемещение
rm / del / ri Remove-Item rm -Recurse old_folder удаление
cls / cl Clear-Host cls очистка экрана
echo Write-Output echo $env:USERNAME вывод переменной
man / help Get-Help man Get-Process справка
gps Get-Process gps chrome | sort CPU -Desc процессы
gpv Get-ItemPropertyValue gpv HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion ProgramFilesDir реестр

Пример реального однострочника который я использую почти каждый день.

gci -Recurse *.log | ? {$_.Length -gt 10MB} | % { $_.FullName } | sort Length -Descending

Находит все лог-файлы тяжелее 10 МБ сортирует по размеру и выводит полный путь. Без алиасов эта строка была бы в два раза длиннее.

Создание собственных алиасов через Set-Alias и New-Alias

Самый простой способ.

Set-Alias np notepad.exe # запуск блокнота по np

Set-Alias ll Get-ChildItem # ll как в linux

Set-Alias which Get-Command # поиск команды

Разница между Set-Alias и New-Alias небольшая. New-Alias ругается если алиас уже существует а Set-Alias перезаписывает молча. Я предпочитаю Set-Alias.

Пример полезного алиаса для разработчиков.

Set-Alias tf terraform # tf вместо terraform

Set-Alias k kubectl # k вместо kubectl

Как сделать алиасы постоянными через профиль PowerShell

Алиасы созданные в текущей сессии пропадают после закрытия PowerShell. Чтобы они жили всегда добавляем их в профиль.

notepad $PROFILE

Если файл не существует PowerShell предложит создать. Откроется пустой файл Microsoft.PowerShell_profile.ps1. Добавьте туда свои алиасы.

Set-Alias ll Get-ChildItem

Set-Alias np notepad.exe

Set-Alias grep Select-String

После сохранения перезапустите PowerShell или выполните . $PROFILE.

На рабочих серверах я обычно храню профиль в OneDrive или Git чтобы настройки были одинаковые на всех машинах.

Алиасы в повседневной работе, реальные сценарии 2025-2026 годов

Сценарий 1 быстрая чистка папки Downloads

gci ~/Downloads | ? {$_.LastWriteTime -lt (Get-Date).AddDays(-30)} | rm -WhatIf

Сначала смотрим что удалится потом убираем -WhatIf и чистим.

Сценарий 2  поиск процессов которые жрут память

gps | sort WS -Descending | select -First 15 | ft Name,@{n='MemMB';e={[math]::Round($_.WS/1MB,1)}}

Сценарий 3 мониторинг логов в реальном времени

cat error.log -Tail 20 -Wait

Алиасы здесь экономят время особенно когда вы в RDP и печатаете на русской раскладке по ошибке.

Когда алиасы вредят и лучшие практики от сисадмина

Главное правило, в консоли используйте алиасы сколько угодно. В скриптах которые хранятся годами и отдают коллегам лучше писать полные имена командлетов.

Почему:

  • читаемость кода выше
  • меньше шансов на конфликт если кто-то переопределит алиас
  • PowerShell ISE и VS Code подсвечивают полные имена лучше
  • в скриптах выполняемых по расписанию алиасы иногда не подгружаются

Рекомендую стиль:

  • консоль → % ? gci cat
  • скрипты → ForEach-Object Where-Object Get-ChildItem Get-Content

Сравнительная таблица популярных алиасов

Действие PowerShell полный Алиас короткий *nix аналог
Список файлов Get-ChildItem gci / dir / ls ls / dir
Фильтр Where-Object ? grep / awk
Цикл по объектам ForEach-Object % for / xargs
Чтение файла Get-Content cat / gc cat
Очистка экрана Clear-Host cls / cl clear

Частые ошибки таблица

Ошибка Что происходит Как исправить
Пишут rm -r вместо Remove-Item -Recurse в скрипте не работает использовать полное имя в скриптах
Создают алиас help → Get-Help ломается встроенная справка не переопределять важные алиасы
Забывают $PROFILE алиасы пропадают после перезапуска добавлять в профиль
Используют алиасы в чужих скриптах не понимают что делает код заменять на полные имена при чтении

Альтернативные способы упрощения команд

Кроме алиасов есть еще несколько подходов.

  • Функции в профиле, когда нужна логика а не просто переименование
  • Модули с собственными командлетами
  • PSReadLine, автодополнение и история
  • Oh My Posh, красивый prompt с git статусом

Пример функции вместо алиаса.

function up { Set-Location .. }

FAQ

Зачем нужны алиасы если можно писать полные команды?
Экономия времени в консоли. Особенно когда печатаешь много однотипных команд.
Можно ли удалить встроенный алиас?
Да. Remove-Alias dir -Force. Но лучше не трогать.
Почему в скрипте % не работает?
В скриптах алиасы по умолчанию отключены. Используйте полные имена.
Как узнать какой алиас на что указывает?
Get-Alias имя_алиаса
Алиасы работают в PowerShell 7 на Linux?
Да большинство работают. dir ls cat cp mv rm есть и там.
Безопасно ли добавлять 50 своих алиасов в профиль?
Если только вы ими пользуетесь — да. Но не давайте такой профиль новичкам.
Как экспортировать свои алиасы?
Export-Alias myaliases.csv
PowerShell 7.5 изменил что-то в алиасах?
Нет. Механика осталась прежней с 5-й версии.

Вывод

Алиасы это как нож на кухне. В руках опытного сисадмина ускоряют работу в разы. В руках новичка или при написании серьезных скриптов могут создать путаницу. Мой личный подход такой, в терминале % ? gci cat сколько угодно. В скриптах которые живут больше месяца, только полные имена командлетов.

Если вы только начинаете, то запомните хотя бы ?, %, gci, cat, cls. Остальное придет само. А если уже давно работаете с PowerShell, тогда загляните в свой $PROFILE. Возможно там лежат алиасы которые вы сами забыли и которые можно вынести в отдельный модуль.

Удачи в терминале и поменьше лишних нажатий клавиш.

Понравилась статья?

Помогите Setiwik.ru создавать больше глубоких обзоров и новостей. Один клик и ваш вклад помогает держать серверы включёнными и авторов мотивированными!

Спасибо, что вы с нами!

Nazario

Я Назар. Уже больше десяти лет я работаю с Linux и Windows системами каждый день. Это моя основная профессия и большая часть жизни.
Всё, что ты читаешь на Setiwik.ru, начинается с официальной документации, мануалов и технических спецификаций. Я их изучаю очень внимательно. Но ценность статей появляется именно тогда, когда я беру эту базу и пропускаю через десятки реальных ситуаций: ночные аварии, странные баги, которые не гуглятся с первого раза, выстраданные конфиги и проверенные обходные пути.
Я не обещаю истину в последней инстанции. Но если мой опыт поможет тебе сэкономить хотя бы пару часов нервов и перезагрузок, значит всё это было не зря. Здесь только практика: от тонкой настройки серверов до самых неожиданных ситуаций, которые официальные руководства обычно обходят стороной.
Setiwik.ru это место, где IT становится понятнее и спокойнее. Заходи почаще. Будем разбираться вместе.

Практические инструкции по Windows и Linux
Добавить комментарий