Одним из старейших приложений и инструментов командной строки, поставляемых с операционной системой Windows, является командная строка, обычно называемая CMD. Теперь Windows поставляется не с одним или двумя, а с тремя инструментами. Есть ОГ, которая является командной строкой. Затем появился PowerShell, дебютировавший в 2006 году в Windows XP. А затем Windows Terminal, выпущенный в 2019 году для Windows 10 и более поздних версий 11. Так чем же отличаются эти три служебных инструмента? Зачем нам вообще три, когда достаточно одного или действительно достаточно одного?
Командная строка против PowerShell против Windows Terminal
По своей сути все они представляют собой оболочку командной строки и язык сценариев, предназначенные для устранения ошибок, запуска пакетных команд и управления задачами обслуживания системы. Но по сути, между этими тремя есть тонкие различия, которые делают их разными.
Что такое командная строка
Командная строка была запущена как Command.com с Windows 95 и 98. Некоторые пользователи также помнят ее как MS-DOS. Это потому, что он широко использовался для запуска команд DOS в качестве команд каталога (DIR) или проверки скорости интернета . Позже Microsoft официально выпустила командную строку в Windows NT.
Теперь пользователи могли взаимодействовать с собственной файловой системой и устранять некоторые распространенные и не очень распространенные ошибки, выполняя системные команды.
Что такое Windows PowerShell
PowerShell обратно совместим с командной строкой, что означает, что все, что вы можете сделать с помощью CMD, вы можете сделать с помощью PowerShell. Запущенная в 2006 году с XP, Microsoft сразу увидела потенциал и выпустила версию 2.0 с Windows 7.
Новый PowerShell был еще более мощным и мог выполнять сложные команды, автоматизировать административные задачи, выполнять команды удаленно и запускать язык программирования C#, который сам интегрируется с .NET Framework — ключевым компонентом архитектуры Windows с самого начала.
Что такое терминал Windows
Windows Terminal — это проект с открытым исходным кодом, доступный на GitHub . Беря пример с популярных эмуляторов терминалов и интерфейсов оболочки, таких как Terminator, Windows Terminator шел с полной мощью. Помимо поддержки команд и оболочек командной строки и PowerShell, он также поддерживает подсистему Windows для Linux или WSL. Другими словами, теперь вы можете использовать BASH, который до сих пор был ограничен ОС Linux.
Хотя он был предустановлен на моей копии Windows 11, вы можете легко загрузить его из Магазина Microsoft .
Интерфейс
Командная строка имеет самый простой интерфейс, который сразу же напомнит вам о начале 2000-х годов, когда веб-страницы и графический интерфейс выглядели неинтуитивно и примитивно. Черный фон с белыми шрифтами, где вы можете отдавать команды.
PowerShell сделал еще один шаг вперед, применив определенные цвета к результатам, чтобы упростить понимание вывода. Например, некоторые фрагменты текста выделены желтым цветом, а ошибки выделены красным.
Терминал выводит вещи на новый уровень, используя подход с вкладками. Теперь вы можете открывать несколько вкладок и работать над разными проектами или выполнять разные задачи одновременно. Это делает многозадачность возможной и увлекательной. Некоторыми примерами могут быть Raspberry Pi через SSH, CMD и даже PowerShell в Терминале.
Кроме того, он не только поддерживает полный спектр или цветовые схемы, но вы также можете применить свою собственную цветовую схему . Существует меню настроек, в котором вы можете изменить цветовую схему и внести другие изменения во внешний вид, действия и т. д. Мало того, вы можете создавать профили с различными настройками для разных оболочек, терминалов и туннелей SSH. У энтузиастов есть работающая библиотека тем Windows Terminal , которую вы можете проверить.
Читайте также: 6 лучших способов настроить приложение Windows Terminal
PowerShell — единственный с синим фоном, однако вы можете изменить его . Я думаю, что Microsoft внесла значительные изменения в отдел пользовательского интерфейса с Терминалом. Это не означает, что PowerShell не мощен. Это сумасшедшие возможности по сравнению со старой и скромной командной строкой. Но Терминал выигрывает раунд пользовательского интерфейса.
Внимательные пользователи заметили бы, что Терминал имеет отдельные настройки для CMD и PowerShell на приведенном выше снимке экрана. Подробнее об этом позже.
Где используется командная строка
Командная строка в основном использовалась системными администраторами, которые выполняют административные задачи, такие как форматирование и управление разделами диска. CMD также широко использовался для просмотра и управления файлами каталогов , как пользовательскими, так и системными. Поскольку был возможен доступ к системным файлам, администраторы могли устранять различные типы ошибок и исправлять поврежденные файлы.
Где используется PowerShell
PowerShell может делать все это и еще кое-что. С помощью PowerShell администраторы могут контролировать и управлять сетью компьютеров в организации. CMD поддерживает пакетные команды, где вы можете указать несколько команд, и он будет выполнять их по одной без вашего участия.
PowerShell, как следует из названия, также может запускать и интерпретировать команды Batch и Shell. Итак, чем команды PowerShell отличаются от команд Batch? Команды PowerShell используют командлеты, что означает группу команд. Администраторы могут создавать командлеты, а затем выполнять их с помощью одной команды. Нет необходимости подавать несколько команд в пакет. Это так называемые скрипты. PowerShell может выполнять эти сценарии и автоматизировать весь процесс, не дожидаясь выполнения отдельных команд, как в CMD.
Делая еще один шаг вперед, CMD также работает с конвейерами, что часто встречается в операционных системах Linux. Так что же такое трубы? Каналы позволяют администраторам передавать данные между программами, а также между компьютерами, работающими в одной сети. Точно так же, как CMD может выполнять команды в пакете, PowerShell может выполнять командлеты в последовательности.
Так, например, каналы позволяют администраторам получать выходные данные из одной программы и передавать их в качестве входных данных другой программе, тем самым создавая цепочку каналов. Следовательно, цепочка команд проходит через разные программы и даже компьютеры.
Где используется терминал
Терминал раскрывает весь потенциал BASH ( Bourne Again Shell ), который ранее был ограничен ОС Linux. Терминал также поддерживает символы Unicode и UTF-8 и механизм рендеринга текста с ускорением на GPU. Этот последний бит означает, что Terminal может интерпретировать и отображать смайлики, специальные символы, значки и шрифт Cascadia-code , что открывает двери для литературы по программированию.
Поскольку Windows Terminal — это проект с открытым исходным кодом, ожидайте появления дополнительных функций и непрерывной разработки в будущем. Еще в 2016 году Microsoft объявила , что будет поддерживать BASH внутри Windows, позволяя пользователям запускать Ubuntu. Терминал, наконец, делает это возможным.
Подведение итогов: командная строка против PowerShell против терминала
Терминал сменил PowerShell так же, как PowerShell сменил командную строку. Терминал — это место, где все собирается вместе и работает именно так, как должно. И поскольку он обратно совместим, вам больше не нужно использовать CMD или PowerShell, однако вы можете, если хотите.
Читайте также: