Учебники

Powershell: что это такое, основные и рекомендуемые команды

Оглавление:

Anonim

Так же, как он работает и выполняет задачи, аналогичные тем, которые можно получить с помощью командной строки, родной инструмент Windows PowerShell является источником ввода для операционной системы Windows. Инструмент, который часто используется для своей гибкости как инженерами, так и системными аналитиками ежедневно в своей работе.

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

В отличие от того, что происходит в CMD, PowerShell предоставляет нам надежный интерфейс сценариев со специальными функциями, где вы можете запускать их для выполнения различных процессов в системе Windows. С такой интерактивной командной строкой вы можете запускать команды для автоматизации различных задач.

Этот инструмент уже был совместим с Windows XP, но для его использования его необходимо было загрузить и установить. Теперь с Windows 10 Powershell уже предустановлен и имеет значительный обзор, чтобы облегчить доступ.

Указатель содержания

Что такое Windows Powershell?

Интерфейс PowerShell можно использовать для различных целей, таких как запуск расширенных приложений или даже для более простых задач, таких как знание текущего времени. Кроме того, команды Powershell могут работать вместе, объединяя их в командной строке для получения более конкретных и сложных результатов. Это было названо " конвейерная обработка".

Между тем, Powershell также предлагает опцию, которая может пригодиться некоторым пользователям: возможность добавлять другие команды, созданные теми же пользователями, в консоль.

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

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

Как открыть Windows PowerShell

Инструмент PowerShell можно быстро открыть с помощью функции «Выполнить», включенной в Windows.

  • Для этого одновременно нажмите клавиши Windows + R. В открывшемся окне «Выполнить» введите «PowerShell» и нажмите кнопку «ОК» или нажмите клавишу «Ввод».

Другой доступ к Powershell - использование поисковой системы, предлагаемой Cortana, расположенной в нижней левой части экрана, из которой вы можете искать этот инструмент.

Основные команды PowerShell (учебник)

В PowerShell команды называются «командлетами», и вы можете использовать клавишу табуляции, чтобы Powershell автоматически заполнял имя командлета, который вы хотите использовать.

Windows PowerShell был создан с учетом обратной совместимости, что делает его ресурсом, который хорошо работает с теми же командами, которые использует CMD. Зная это, можно использовать те же команды, которые использовались в командной строке, но в более продвинутом интерфейсе и с большим количеством команд.

Здесь мы собрали значительное количество полезных командлетов, которые можно использовать в Powershell, и подробно расскажем о синтаксисе каждого из них, а также о конкретной функции каждого из них.

Чтобы начать с основ и быстро взглянуть на командлеты, которые предлагает нам PowerShell, мы можем выполнить команду «Show-Command», через которую откроется окно, показывающее нам обширный и полный список всех доступных команд.

Get-Command

Если вы хотите знать все командлеты, которые предлагает PowerShell, вы можете сделать это, набрав эту команду в консоли.

С помощью этой команды Windows PowerShell позволяет узнать все функции и характеристики, которые включают ее командлеты, представленные в виде списка, в котором описаны функции каждого из них, а также их параметры и специальные параметры.

Чтобы получить этот список команд, необходимо написать «Get-Command», за которым следует определенный параметр, с помощью которого информация будет получена из соответствующего командлета. Например, если мы напишем в Powershell «Get-Command * -help *», мы увидим серию команд, которые принимают параметр «-help».

Если вы добавите звездочку к каждой стороне параметра, как мы сделали в примере, вы получите все возможные комбинации, которые использует командлет Get-Command, когда они сопровождаются «-help».

Введите «Get-Command -Name» в консоли «Мы получаем набор команд, которые включают это конкретное имя. Может случиться, что вы не помните или не знаете правильное имя командлета. В этой ситуации вы можете включить две звездочки на каждой стороне имени, как упомянуто выше, например, «Get-Command -Name * set *», чтобы вы могли увидеть список командлетов, которые включают термин «set» в твое имя

Get-Host

Выполнение этой команды дает вам версию Windows PowerShell, которую использует система.

Get-History

Эта команда предоставляет историю всех команд, которые были выполнены во время сеанса PowerShell и которые в настоящее время выполняются.

Get-Random

Выполнение этой команды дает случайное число от 0 до 2 147 483 646.

Get-Service

В некоторых случаях необходимо знать, какие службы были установлены в системе, для чего можно использовать команду Get-Service, которая предоставит информацию о запущенных службах и тех, которые уже были остановлены.

Чтобы использовать этот командлет, введите «Get-Service» в консоли, используя любой из дополнительных параметров, в синтаксисе, подобном следующему примеру:

Get-Service | Where-Object {$ _. Status -eq "Running"}

При этом услуги выполняются в системе. Если эта команда выполняется без какого-либо параметра, будет представлен список всех служб с соответствующими состояниями (например, «Работает» или «Остановлен»).

Если вы уже точно знаете, о какой команде вы хотите получить информацию, использовать Get-Service гораздо удобнее, чем переходить на панель управления Windows и работать из графического интерфейса пользователя Windows.

Get-Help

Эта команда особенно полезна для начинающих пользователей Powershell. Она предоставляет базовую помощь, чтобы больше узнать о командлетах и ​​их функциях.

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

Точно так же его использование совсем не сложно: вам просто нужно написать «Get-Help» вместе с командлетом, о котором вы хотите узнать больше деталей. Чтобы проиллюстрировать его использование, мы могли бы искать дополнительную информацию из командлета «Get-Process», и в этом случае было бы достаточно написать «Get-Help Get-Process».

Чтобы иметь более четкое представление о том, как Get-Help работает в Windows PowerShell, просто запустив эту команду, мы увидим описание вместе с кратким объяснением того, как ее использовать.

Get-Date

Чтобы быстро узнать, какой день был в определенный день в прошлом, с помощью этой команды вы получите точный день. Например, чтобы узнать, какой день был 20 мая 2009 года, вам нужно написать в Powershell:

«Get-Date 05.05.2009», ввод даты в формате «dd.mm.aa». В случае выполнения Get-Date один, он даст нам текущую дату и время.

PS C: \ Users \ MiguePR> Get-Date Суббота, 27 июля 2019 г. 12:00:40

Copy-Item

С помощью этой команды вы можете копировать папки или файлы.

Если вы хотите сделать копию файлов и каталогов на вашем накопителе или если вам нужно скопировать ключи или записи реестра, то Copy-Item - это правильный командлет. Она работает очень похоже на команду «cp», которая включена в командную строку, хотя она намного лучше.

Для этого команда Copy-Item должна использоваться для копирования и изменения имени элементов с использованием той же команды, с помощью которой можно установить новое имя для указанного элемента. Если вы хотите скопировать и переименовать файл «ProfesionalReview.htm» в «Proyectitosbuenos.txt», напишите:

Копия-элемент "C: \ Proyectos.htm" -Предназначение "C: \ MyData \ Proyectos.txt".

Invoke-Command

Если вы хотите запустить скрипт или команду PowerShell (локально или удаленно, на одном или нескольких компьютерах), «Invoke-Command» будет вашим лучшим вариантом. Он прост в использовании и поможет вам управлять пакетными компьютерами.

Вам нужно ввести Invoke-Command рядом со скриптом или командой с ее точным местоположением.

Invoke-Expression

С Invoke-Expression выполняется другое выражение или команда. Если вы обнаружите, что вводите строку ввода или выражение, эта команда сначала его проанализирует, а затем выполнит. Без этой команды строка не возвращает никаких действий. Invoke-Expression работает только локально, в отличие от Invoke-Command.

Чтобы использовать эту команду, выражение-выражение должно быть записано вместе с выражением или командой. Например, вы можете установить переменную «$ Command» с помощью команды, которая указывает на командлет «Get-Process». Выполнив команду «Invoke-Expression $ Command», «Get-Process» будет действовать так же, как и командлет на локальном компьютере.

Аналогично, функция может быть выполнена в сценарии с использованием переменной, что очень полезно при работе с динамическими сценариями.

Invoke-WebRequest

С помощью этого командлета, аналогичного cURL в Linux, вы можете выполнить вход, очистку и загрузку информации, относящейся к службам и веб-страницам, работая в интерфейсе PowerShell, отслеживая некоторые веб-сайты Вы хотите получить эту информацию.

Для выполнения этих задач он должен использоваться как Invoke-WebRequest вместе со своими параметрами. При этом можно получить ссылки, которые есть на конкретном веб-сайте со следующим примером синтаксиса:

(Invoke-WebRequest - Uri 'https://wwww.ebay.com'). Ссылки

В этом случае будут получены ссылки с сайта eBay.

Set-ExecutionPolicy

Хотя мы можем создавать и запускать сценарии (.ps1) из PowerShell, мы ограничены из-за проблем безопасности. Однако это можно изменить с помощью категории безопасности с помощью командлета Set-ExecutionPolicy.

Вам нужно только набрать Set-ExecutionPolicy рядом с одним из четырех параметров безопасности, чтобы внести необходимые изменения:

  • ОграниченоВсе подписаноУдалено подписаноНеограничено

Например, если мы хотим установить ограниченный уровень безопасности, мы должны использовать:

Set-ExecutionPolicy -ExecutionPolicy Restricted

Get-Item

Если вы ищете информацию об элементе с определенным местоположением, например, о каталоге на жестком диске, для этой задачи указывается команда Get-Item.

Следует уточнить, что содержимое самого элемента, такого как подкаталоги и файлы в определенной папке, не получается, если вы явно не запросите его.

На другой стороне Get-Item находится командлет Remove-Item, который позволяет удалить указанный элемент.

Remove-Item

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

Командлет Remove-Item позволяет удалять элементы из определенных мест с использованием определенных параметров. В качестве примера можно удалить файл «Finanzas.txt» с помощью следующей команды:

Удалить элемент "C: \ MyData \ Finance.txt"

Get-Content

Когда вам нужно все, что содержит текстовый файл с точки зрения содержимого по определенному пути, откройте его и прочитайте его с помощью текстового редактора, например Блокнота. Используя Windows PowerShell, вы можете использовать команду Get-Content, чтобы просмотреть содержимое файла, не открывая его.

Например, можно получить 20 строк текста, включенных в файл «Proyectos.htm», для которого вы можете написать:

Get-Content "C: \ Proyectos.htm" -TotalCount 20

Этот командлет похож на предыдущий командлет Get-Item, но с его помощью мы можем получить то, что включено в указанный вами файл. Если вы запустите эту команду для файла с расширением txt, он полностью покажет текст, включенный в этот файл. Если вы используете его в файле изображения png, вы получите много бессмысленных и нечитаемых двоичных данных.

Если используется отдельно, Get-Content не очень полезен. Но его можно смешивать с более конкретными командлетами, чтобы получить более точные результаты.

Set-Content

С помощью этого командлета можно хранить текст в файле, что-то похожее на то, что можно сделать с помощью «echo» в Bash. При использовании в сочетании с командлетом Get-Content вы можете сначала просмотреть содержимое определенного файла, а затем скопировать его в другой файл с помощью Set-Content.

Например, вы можете использовать командлет Set-Content, чтобы добавить или заменить содержимое файла другим содержимым. Наконец, его можно объединить с вышеупомянутой командой, чтобы сохранить его под новым именем (example.txt) следующим образом:

Get-Content "C: \ Proyectos.htm" -TotalCount 30 | Set-Content "Example.txt"

Get-Variable

Если вы в PowerShell пытаетесь использовать переменные, это можно сделать с помощью командлета Get-Variable, с помощью которого вы сможете просматривать эти значения. Эта команда отображает значения в таблице, из которых можно использовать, включать и исключать символы подстановки.

Чтобы использовать его, вам просто нужно написать «Get-Variable» вместе с его параметрами и другими параметрами. Например, если вы хотите узнать значение переменной «скидка», напишите следующее:

Получить-Переменная -Название "скидка"

Set-Variable

С помощью этого командлета можно установить, изменить или переинициализировать значение переменной. Чтобы установить значение переменной предыдущего случая, должно быть написано следующее:

Set-Variable -Name "discount" -Value "Значение установлено здесь"

Get-Process

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

Командлет Get-Process имеет некоторое сходство с Get-Service, хотя в этом случае он предоставляет информацию о процессах.

Запуск процесса

С помощью этого командлета Windows PowerShell значительно упрощает запуск процессов на компьютере.

Например, если вам нужно использовать калькулятор, вы можете быстро и легко открыть его, введя следующее:

Start-Process -FilePath «calc» –Verb

Stop-Process

С помощью этого командлета вы можете остановить процесс, независимо от того, был ли он запущен вами или другим пользователем.

Продолжая пример калькулятора, если вы хотите полностью прервать запущенные процессы, напишите в PowerShell следующее:

Stop-Process -Name "calc"

Start-Service

Если вам нужно запустить службу на ПК, используйте командлет Start-Service, указанный в этом случае, и он действует аналогично, даже если эта служба отключена на ПК.

Для запуска службы поиска Windows используется следующий синтаксис:

Старт-Сервис -Имя "WSearch"

Stop-Service

С помощью этой команды вы останавливаете службы, запущенные на компьютере.

Стоп-Сервис -Название "Wsearch"

С этим заказом вы остановите службу «Поиск Windows».

выход

Вы можете выйти из PowerShell с помощью команды Exit.

Заключение о Windows PowerShell

Может показаться, что некоторые из этих команд мало полезны, хотя это происходит потому, что они являются командами, которые не выделяются, пока не будут введены другие параметры, которые эффективно заставляют PowerShell демонстрировать свою полную мощность.

Эти параметры пригодятся, когда вы пишете свои собственные командлеты или легкие сценарии, что является хорошим способом получить максимальную выгоду от функций PowerShell.

Хотя это команды, которые вы используете спорадически, знание того, как они работают и для чего они нужны, имеет свои преимущества, учитывая, что Microsoft в настоящее время больше, чем когда-либо, сосредоточена на PowerShell.

В конце концов, командлеты являются важными командами, которые вы должны знать, если хотите получить максимальную отдачу от Windows PowerShell.

Учебники

Выбор редактора

Back to top button