TGViewer
Записки IT специалиста Записки IT специалиста @interface31 · 9K subscribers
Post #5426 2.44K
​​Алиасы в PowerShell

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

Да, это так, но этому есть свои основания.

Классические UNIX-оболочки создавались в те далекие и светлые времена, когда компьютеры были большие, объемы памяти маленькие, а скорости передачи данных – медленные. Все это заставляло биться буквально за каждый байт.

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

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

Например, команда:

grep error error.log

Еще вполне читабельна и если мы помним, что такое grep, то без труда догадаемся, что мы ищем строку "error" в файле error.log. Но расширение не является обязательным атрибутом файла и поэтому мы вполне можем встретить:

grep error error

И если вы не помните синтаксис grep вам придется непросто. Особенно если нужно изменить часть команды.

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

Поэтому тот же аналог grep в PowerShell выглядит так:

Select-String -Pattern "error" -Path .\error

Да, многословно, но даже далекий от PowerShell человек поймет, что мы выбираем строки, содержащие текст “error” из файла .\error.

И если мы занимаемся написанием скриптов, то такая многословность нам только в плюс, так как сильно облегчает читаемость кода человеком.

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

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

А вот как раз для этого придумали алиасы. Полный список алиасов команд PowerShell можно посмотреть, выполнив команду:

Get-Alias

Если нас интересует конкретная команда, то следует набрать:

Get-Alias -Definition Select-String

А если, наоборот, расшифровать алиас, то следует выполнить:

Get-Alias sls

Также можно создавать свои алиасы, для этого используйте команду:

Set-Alias -Name grep -Value Select-String

Таким образом мы легко можем настроить среду согласно своих привычек или просто писать в привычном стиле:

sls error error

А для тех, кто свои лучше годы отдал работе с Windows, напоминаем, что PowerShell давно доступен и на платформе Linux.
  • 👍 27
  • ❤ 1
  • 🔥 1
  • 🥱 1
More from @interface31
  1. Oct 3, 2026Post #6834
  2. Oct 2, 2026До первого сервис-пака не ставить На фоне некоторых коллег, которые бегут ставить свежий с…
  3. Oct 2, 2026Post #6832
  4. Oct 2, 2026Без лишнего шума и пыли вышла Aspia 3.0. Ключевые изменения в выжимке ниже: 1️⃣ Архитектур…
  5. Oct 2, 2026Post #6826
  6. Oct 1, 2026V2V миграция при помощи Vinchin Backup & Recovery Виртуализация сегодня – норма жизни, даж…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →