PowerShell против CMD (командная строка). В чем ключевое отличие

Если вы являетесь администратором Windows и проводите большую часть своего времени, работая в среде Windows, возможно, вы много раз сталкивались с терминами CMD и PowerShell. Но в чем разница между этими PowerShell и CMD? В этой статье вы получите исчерпывающий обзор PowerShell против CMD, некоторых команд и сравнительную таблицу, чтобы вы могли легко понять все существенные различия.

Разница между CMD и PowerShell заключается в том, что CMD — это «традиционный» стиль командной строки или интерактивной оболочки. Он очень удобен в использовании, и тысячи людей могут его без проблем выполнить. С другой стороны, PowerShell — это встроенная, но сложная программа командной строки Microsoft, которая значительно уступает оболочкам, доступным для систем на базе Linux или Unix. Большинство команд командной строки легко использовать в PowerShell изначально или через псевдонимы.

Итак, в чем разница между и как это произошло? На протяжении многих лет было много споров о точном происхождении PowerShell. Он был разработан как замена интерфейса командной строки, поставляемого с системами UNIX, чтобы системные администраторы могли сэкономить свое драгоценное время и автоматизировать задачи администрирования. Нет никаких сомнений в том, что PowerShell стал неотъемлемой частью нашего компьютерного опыта.

CMD или «интерфейс командной строки» — это не что иное, как серия простых команд. Эти команды позволяют выполнять простые административные задачи и взаимодействовать с любым объектом Windows в операционных системах Microsoft Windows. Напротив, интерфейс командной строки PowerShell позволит вам выполнять более сложные задачи и сложные сценарии.

PowerShell делится на две основные категории: «Обычные» и «Особые». Типичный интерфейс PowerShell не имеет особых возможностей. Точно так же CMD разбита на серию команд. Итак, в чем разница между PowerShell и cmd?

 

PowerShell против командной строки: таблица сравнения


















PowerShellКомандная строка
PowerShell был представлен в 2006 году.CMD был представлен в 1981 году.
Вы можете запустить его, набрав PowerShell.Вы можете запустить его, набрав CMD.
Он поддерживает как пакетные, так и командлеты PowerShell.На CMD следует запускать только пакетные команды.
Он также поддерживает создание псевдонимов для командлетов, чтобы пользователи могли легко перемещаться между функциями.CMD не может создавать псевдонимы команд.
У вас есть свобода передавать выходные данные командлета другому командлету.Вы никогда не сможете передать результат одной команды другой.
PowerShell возвращает результат в виде объекта.CMD возвращает только текст.
Мы можем запустить последовательность командлетов в сценарии.В cmd вторая команда будет запущена, если первая команда будет завершена.
Вы можете использовать команду Help, чтобы с легкостью получить информацию о любых командлетах.В CMD нет такой опции помощи.
PowerShell имеет интегрированную среду сценариев (ISE).Это просто интерфейс командной строки.
Вы можете получить доступ к библиотекам программирования, потому что они построены на основе .NET Common Language Runtime (CLR).Нет доступа к библиотекам
Вы можете напрямую интегрировать его с WMI.Если вам нужна интеграция с WMI, вам потребуются внешние плагины.
С облачными продуктами Microsoft проще подключиться.CMD не может подключиться к продуктам Microsoft Online.
Он поддерживает системы Linux.CMD не поддерживает системы Linux.
Вы можете запускать все типы программ с помощью PowerShell.ssCMD предназначен только для программ консольного типа.

 

Powershell против cmd: Несколько примеров

Как изменить каталог?

CMD:

cd /d D:

PowerShell:

Set-Location D:

PowerShell против CMD (командная строка). В чем ключевое отличие

 

Вывод: Обе команды, приведенные выше, были использованы для изменения текущего местоположения каталога на диск D.

 

Как перечислить файлы в каталоге?

CMD:

Dir

PowerShell:

Get-Childitem

PowerShell против CMD (командная строка). В чем ключевое отличие

 

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

 

Как переименовать файл?

CMD:

rename d:old.txt new.txt

PowerShell:

Rename-Item "d:new.txt" -NewName "old.txt"

PowerShell против CMD (командная строка). В чем ключевое отличие

 

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

 

Как получить помощь?

CMD:

Help

PowerShell:

Get-Help

PowerShell против CMD (командная строка). В чем ключевое отличие

 

Вывод: Если вы не являетесь экспертом, вы можете выполнить приведенные выше команды, чтобы получить полезную информацию о командах или командлете.

 

CMD:

Tasklist

PowerShell:

Get-Process

PowerShell против CMD (командная строка). В чем ключевое отличие

 

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

 

CMD:

taskkill /IM "skype.exe" /F

PowerShell:

Stop-Process -Name "Skype" -Force

PowerShell против CMD (командная строка). В чем ключевое отличие

 

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

 

Заключительные слова

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



2021-03-26T03:56:01
Microsoft