PowerShell более сложна, чем традиционная командная строка, но она также намного мощнее. Командная строка значительно уступает оболочкам, доступным для Linux и других Unix-подобных систем, но PowerShell конкурирует. Кроме того, большинство команд командной строки можно использовать в PowerShell, будь то изначально или через псевдонимы.
Как PowerShell отличается от командной строки
PowerShell на самом деле сильно отличается от командной строки. Он использует разные команды, известные как командлеты в PowerShell. Многие задачи системного администрирования - от управления реестром до WMI (Инструментарий управления Windows) - отображаются с помощью командлетов PowerShell, хотя они недоступны из командной строки.
PowerShell использует трубы, как это делает Linux, что позволяет передавать выходные данные одного командлета на вход другого командлета. Таким образом, вы можете использовать несколько командлетов последовательно для обработки одних и тех же данных. В отличие от Unix-подобных систем, которые могут передавать только потоки символов (текст) -PowerShell, соединяют объекты между командлетами. И почти все в PowerShell - это объект, включая каждый ответ, который вы получаете от командлета. Это позволяет PowerShell делиться более сложными данными между командлетами, работающими скорее как язык программирования.
PowerShell - это не просто оболочка. Это мощная среда сценариев, которую вы можете использовать для создания сложных сценариев для управления системами Windows намного легче, чем вы могли с помощью командной строки.
Командная строка - это просто устаревшая среда, перенесенная в Windows - среда, которая копирует все различные команды DOS, которые вы найдете в системе DOS. Это больно ограничено, не может получить доступ ко многим функциям администрирования системы Windows, сложнее составить сложные сценарии и т. Д. PowerShell - это новая среда для системных администраторов Windows, которая позволяет им использовать более современную среду командной строки для управления Windows.
Когда вы хотите использовать PowerShell
Итак, когда средний пользователь Windows захочет использовать PowerShell?
Если вы только редко запускаете Командную подсказку для запуска случайных
ping
или же
ipconfig
команды, вам действительно не нужно прикасаться к PowerShell. Если вам удобнее придерживаться командной строки, это никуда не денется. Тем не менее, большинство этих команд отлично работают в PowerShell, если вы хотите попробовать.
Однако PowerShell может быть гораздо более мощной средой командной строки, чем командная строка. Например, мы показали вам, как использовать среду PowerShell, встроенную в Windows, для выполнения операции поиска и замены для пакетного переименования нескольких файлов в папке, что обычно требует установки сторонней программы. Это то, что пользователи Linux всегда были в состоянии сделать со своей командной строкой, в то время как пользователи Windows были исключены.
Системные администраторы захотят изучить PowerShell, чтобы они могли более эффективно управлять своими системами. И если вам когда-нибудь понадобится написать сценарий для автоматизации различных задач системного администрирования, вы должны сделать это с помощью PowerShell.
Эквиваленты PowerShell общих команд
Многие общие команды командной строки - от
ipconfig
в
cd
Работа в среде PowerShell. Это связано с тем, что PowerShell содержит «псевдонимы», которые указывают эти старые команды на соответствующие новые командлеты, запуская новые командлеты при вводе старых команд.
В любом случае мы рассмотрим несколько общих команд командной строки и их эквиваленты в PowerShell, чтобы дать вам представление о синтаксисе PowerShell.
Изменить каталог
-
DOS:
cd
-
PowerShell:
Set-Location
Список файлов в каталоге
-
DOS:
dir
-
PowerShell:
Get-ChildItem
Переименование файла
-
DOS:
rename
-
PowerShell:
Rename-Item
Чтобы узнать, имеет ли команда DOS псевдоним, вы можете использовать
Get-Alias
Командлет. Например, гостиницы
Get-Alias cd
показывает, что
cd
фактически запускает
Set-Location
Командлет.