Рекламное объявление
Большинство пользователей никогда не слышали о PowerShell, не говоря уже о том, чтобы потрогать его и попробовать. Возможно, это из-за названия, которое звучит как нечто, используемое только хардкорными фанатами ИТ. Или, возможно, потому что преимущества PowerShell неясны. Может быть, это из-за начальной кривой обучения.
Да, большинству случайных пользователей компьютеров не нужна мощь PowerShell. Но если у вас есть опыт программирования, или вы предпочитаете командную строку графическим окнам, или если вы любите автоматизировать задачи с помощью сценариев, то вам понравится то, что может предложить PowerShell.
Короче говоря, PowerShell - это то, что вы получите, если пересечете командную строку с помощью пакетных сценариев, добавите некоторые дополнительные функции и поднял все это на несколько ступеней. Заинтригованный? Вот несколько веских причин, почему вы должны попробовать это.
1. Сценарии PowerShell улучшены
Как и пакетные сценарии, сценарии PowerShell - это просто строки инструкций, записанных в текстовый файл, за исключением того, что файл использует расширение .PS1 вместо расширения .BAT или .CMD. Но на этом сходство заканчивается.
Пакетные сценарии имеют одно огромное ограничение: единственные доступные вам команды - это команды, которые вы можете использовать в командной строке. Или, другими словами, пакетный скрипт - это просто серия команд командной строки (с некоторой условной логикой). Это хорошо для простых задач и простой автоматизации, но реальная помеха, когда вы хотите сделать что-то сложное.
С другой стороны, сценарии PowerShell пишутся с использованием языка сценариев PowerShell, который является настоящим языком программирования, способным разрабатывать логику для действительно сложных задач. Сам язык прост в изучении, особенно если у вас есть опыт программирования, но он поддерживает переменные, функции, циклы, обработку исключений и многое другое.
Еще одна вещь, на которую следует обратить внимание, это то, что PowerShell ISE (интегрированная среда сценариев) значительно улучшена по сравнению с обычной командной строкой. Он имеет несколько изящных функций качества жизни, которые пригодятся при написании сценариев, таких как подсветка синтаксиса, автозаполнение, редактирование с вкладками и контекстно-зависимая справка.
В общем, PowerShell не только позволяет писать лучшие сценарии, но и быстрее.
2. PowerShell поддерживает полный API .NET
Большая часть возможностей и гибкости PowerShell обеспечивается его интеграцией с .NET Framework. Каждая команда PowerShell (называется командлет) на самом деле класс .NET, который вызывается во время выполнения, что просто означает, что командлеты могут быть написаны на любом языке .NET (который на момент написания включает Visual Basic, Visual C ++ и C #).
Так в чем же преимущество поддержки .NET API?
Что ж, .NET API содержит множество удивительных утилит и функций, которые организованы в виде набора стандартных библиотек классов. Вы можете использовать эти аспекты API, чтобы помочь вам в таких вещах, как сбор данных или управление данными, без необходимости переписывать всех этих помощников самостоятельно.
PowerShell в сочетании с .NET API и различными поставщиками, встроенными в сам PowerShell, также позволяет вам подключиться к самым глубоким частям экосистемы Windows Повысьте производительность с помощью сценариев Windows PowerShellЧто если бы вы могли довести производительность Linux до Windows? Большинство дистрибутивов Linux поставляются с мощной оболочкой Bash. PowerShell - не менее мощный терминал для Windows. Подробнее , включая файловую систему, реестр и хранилище сертификатов. Таким образом, командлеты и сценарии PowerShell могут выполнять намного больше, чем пакетные сценарии.
И, возможно, наиболее интересным является то, что PowerShell позволяет передавать выходные данные одного командлета в качестве входных данных другому командлету в виде объектов. Большинство других оболочек, включая Bash, могут передавать информацию только от одной команды к другой в виде простого текста. Метод PowerShell более чистый, более жесткий и менее подвержен ошибкам.
3. PowerShell может запускать пакетные сценарии
Если вышеперечисленные причины не убедили вас, то я верю, что одна из них убедит вас.
PowerShell не построен поверх командной строки. Эти две оболочки совершенно разные с отдельными базовыми архитектурами, поэтому технически неправильно думать о PowerShell как «Командная строка 2.0» или что-то еще. Тем не менее, PowerShell разработан для обратной совместимости.
Большинство общих команд, которые вы используете в командной строке, можно использовать в PowerShell. В сущности, PowerShell имеет встроенные эквиваленты командлетов, которые были написаны для точного выполнения сценариев. то же самое, что и эти команды, но использует псевдонимы для «подключения» старых имен команд к новым командлеты.
Например, когда вы запускаете CD в PowerShell вы фактически запускаете Set-Location Командлет. В этом случае «cd» - это просто псевдоним «Set-Location», и это облегчает вам жизнь. Точно так же, когда вы используете переименование в PowerShell он тайно запускает Rename-Item Командлет.
И поэтому неудивительно, что вы можете запускать пакетные сценарии в PowerShell, что означает, что вы можете переходить от пакетного сценария к сценариям PowerShell без необходимости отбрасывать все холодные индейки.
4. PowerShell - предполагаемое будущее Microsoft
Впервые PowerShell дебютировал еще в 2006 году. Теперь, спустя десятилетие, он стал одним из самых важных проектов Microsoft. Команда разработчиков усердно работает над тем, чтобы сделать ее наилучшей оболочкой, и Microsoft действительно делает все возможное, чтобы добиться ее принятия, особенно среди ИТ-специалистов.
В будущем PowerShell станет основным методом автоматизации задач и приложений в корпоративных продуктах Windows и Microsoft. Это настолько серьезный шаг, что даже сторонние поставщики начали предоставлять библиотеки PowerShell для управления и устранения неполадок своего программного обеспечения.
Но самое главное, Microsoft увеличивает количество вопросов, связанных с PowerShell, которые задаются на некоторых сертификационных экзаменах. Фактически, согласно интервью 2009 года в TechNet Magazine, Microsoft заявила, что «самый важный навык, который понадобится администратору Windows в ближайшие годы, - это знание Windows PowerShell «.
Итак, являетесь ли вы опытным домашним пользователем или ИТ-специалистом, который управляет системами Windows, пришло время признать, что пакетные сценарии устарели, а PowerShell - это будущее.
5. PowerShell можно использовать в Linux
За последние несколько лет Microsoft предприняла ряд удивительных шагов, связанных с областью программного обеспечения с открытым исходным кодом. В 2014, они открывают исходный код .NET Framework GNU, начинающееся для Microsoft: что означает .NET Framework с открытым исходным кодом для всех остальныхMicrosoft только что выпустила значительную часть своего кода под лицензией с открытым исходным кодом. Этот шаг разрывается с годами традиций. Но почему и что это значит для вас? Подробнее и сделал его доступным на нескольких платформах. Затем в 2016 году они изначально интегрированы оболочка Bash в Windows 10 Краткое руководство по Linux Bash Shell в Windows 10Теперь вы можете запустить Linux на Windows. Узнайте больше о Bash для Windows, от того, как и зачем его устанавливать, до скрытых функций, о которых вы, вероятно, не знали. Подробнее .
А в 2017 году PowerShell стал проще, чем когда-либо, для установки в Linux. На момент написания этой статьи у Microsoft теперь есть репозитории пакетов, которые можно использовать для установки PowerShell Core в большинстве основных версий Linux. Если ваша система поддерживает кв-прибудете или же ням, то вы, скорее всего, можете установить его без проблем. Если нет, вы все еще можете использовать старые инструкции по установке Как установить и использовать PowerShell в LinuxВ 2016 году Microsoft открыла PowerShell с открытым исходным кодом и представила кроссплатформенную итерацию. В этой статье я собираюсь показать вам, как установить, запустить и использовать PowerShell в Linux! Подробнее .
Почему это хорошие новости? Потому что ваши знания PowerShell больше не будут ограничиваться одной операционной системой. Пакетные сценарии могут выполняться только в Windows (или через Wine в Linux, что мы не рекомендуем), поэтому это ограничительно, в то время как PowerShell теперь может помочь расширить ваш опыт.
Начало работы с Windows PowerShell
Убеждены еще? Если нет, то все в порядке. Как я уже говорил выше, PowerShell не для всех, и если вы достаточно счастливы, используя пакетные сценарии для личного использования, не стесняйтесь продолжать их использовать. Но если вы хотите идти в ногу с развивающимися технологиями и хотите стать сертифицированным ИТ-специалистом, изучение PowerShell - это скорее вопрос когдане если.
Если вы хотите начать, то начните с этих основные команды PowerShell 6 основных команд PowerShell, чтобы получить больше от WindowsPowerShell - это то, что вы получаете, передавая стероиды в командную строку Windows. Он предоставляет вам контроль практически над всеми аспектами системы Windows. Мы поможем вам ускорить процесс обучения. Подробнее которые просты и понятны. Как только вы поймете это, продолжайте с этими задачи, которые вы можете автоматизировать с помощью PowerShell 15 расширенных задач, которые PowerShell может выполнять в Windows 10PowerShell похож на командную строку, но лучше. Это мощный инструмент системного администрирования. Мы собрали 15 задач, некоторые простые, некоторые сложные, которые извлекают выгоду из магии PowerShell. Подробнее и учиться как обрабатывать ошибки PowerShell Обрабатывайте ошибки PowerShell как босс с помощью этих советовОбработка ошибок PowerShell состоит из четырех частей. Узнайте, как исправить ошибки и многое другое в Microsoft PowerShell. Подробнее . Этого должно быть достаточно, чтобы вы начали.
Джоэл Ли имеет степень бакалавра в области компьютерных наук и более шести лет профессионального опыта написания. Он главный редактор MakeUseOf.