Часто наличие двух инструментов командной строки в одной операционной системе может запутать пользователя. Сегодня мы поговорим о том, в чем разница между командной строкой и Windows PowerShell и когда их необходимо использовать!
Предыстория
Командная строка Windows: командная строка представляет собой простое приложение Win32. Он имеет возможность взаимодействия с любым другим приложением или объектом Win32 в операционной системе Windows. Люди используют его для различных целей - но главным образом для переключения критических настроек Windows и для исправления различных компонентов операционной системы, используя такие инструменты, как SFC или CHKDSK. Его также можно условно назвать обновленной версией MS-DOS. MS-DOS была приложением командной строки Microsoft в операционных системах Windows до появления командной строки.
Windows PowerShell: PowerShell взаимодействует в более глубокой интеграции с операционной системой Windows, и приносит поддержку скриптов. Он основан на .NET Framework и впервые выпущен в 2006 году. Он используется для всех задач, которые может выполнять командная строка, но кроме того, он также является отличным инструментом для системных администраторов.
CMD vs PowerShell
Первоначальное различие заключается в том, что PowerShell использует использование так называемых командлетов. Эти командлеты позволяют пользователю выполнять ряд административных задач, таких как управление реестром и работу с инструментарием управления Windows. Командная строка не может выполнять такие задачи.
Если вы хоть немного знакомы с компьютерным программированием, вы узнаете о переменных. Эти переменные используются для хранения данных, которые можно использовать для выполнения различных операций. Командлеты PowerShell можно использовать для операций в другом командлете. Это позволяет объединить несколько командлетов для создания сложного, но эффективного командлета, который выполняет задачу.
Windows PowerShell поставляется с Windows PowerShell ISE, что делает его отличной средой сценариев, которую можно использовать для создания и управления различными сценариями PowerShell.
Командная строка Windows не может делать все эти вещи. Это устаревшая среда. Она вдохновлена MS-DOS и не имеет большого доступа к административным привилегиям, как Windows PowerShell.
Вообщем Командная строка является для обычного пользователя, задавать базовые команды, такие как sfc /scannow и т.п.
PowerShell уже более профессиональный. К примеру вот этой одной командой можно переустановить все UWP приложения в Windows 10
- Get-AppXPackage | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}