5 команд, чтобы вы начали работу с PowerShell

Оглавление:

5 команд, чтобы вы начали работу с PowerShell
5 команд, чтобы вы начали работу с PowerShell

Видео: 5 команд, чтобы вы начали работу с PowerShell

Видео: 5 команд, чтобы вы начали работу с PowerShell
Видео: Как передать большие файлы через интернет другому человеку? Бесплатный и удобный сервис DropMeFiles - YouTube 2024, Марш
Anonim
PowerShell быстро становится предпочтительным языком сценариев и CLI для пользователей Power, а также для ИТ-специалистов. Стоит изучить несколько команд, чтобы вы начали, поэтому у нас есть 5 полезных командлетов, которые вы можете узнать сегодня.
PowerShell быстро становится предпочтительным языком сценариев и CLI для пользователей Power, а также для ИТ-специалистов. Стоит изучить несколько команд, чтобы вы начали, поэтому у нас есть 5 полезных командлетов, которые вы можете узнать сегодня.

Get-Command

Get-Command - один из самых полезных командлетов во всей PowerShell, так как он поможет вам справиться с PowerShell, позволяя вам искать определенные командлеты. Использование Get-Command само по себе, по общему признанию, не очень полезно, поскольку оно просто выплевывает каждую команду, которую имеет PowerShell.

Но из этого мы видим, что объекты, которые выходят PowerShell, имеют как свойство Name, так и свойство ModuleName. Используя эту информацию, мы можем найти зернистый наш поиск, выполнив поиск командлетов, содержащих определенные термины. Например, если бы я хотел найти все командлеты, содержащие слово «IP», я мог бы сделать это:
Но из этого мы видим, что объекты, которые выходят PowerShell, имеют как свойство Name, так и свойство ModuleName. Используя эту информацию, мы можем найти зернистый наш поиск, выполнив поиск командлетов, содержащих определенные термины. Например, если бы я хотел найти все командлеты, содержащие слово «IP», я мог бы сделать это:

Get-Command –Name *IP*

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

Get-Command –Module NetTCPIP –Name *IP*

Image
Image

Получить помощь

Когда вы найдете командлет, который вы ищете с помощью Get-Command, вам захочется узнать синтаксис и как вы можете использовать этот конкретный командлет. Здесь появляется Get-Help, если вы когда-либо использовали командную строку в Windows, вы, вероятно, сделали что-то вроде этого:

ipconfig /?

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

Get-Help Get-Process

Image
Image

Get-Member

Get-Member позволяет нам получать информацию об объектах, возвращаемых командлетами. Улов с get-членом заключается в том, что он полагается на функцию конвейера PowerShell, чтобы продемонстрировать это, мы сможем использовать командлет Get-Process.

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

Get-Process | Get-Member

Хотя это может ничего не значит для вас прямо сейчас, вам рано или поздно нужно будет использовать Get-Member, и чем скорее вы научитесь использовать его, тем лучше. В качестве примера, используя информацию из вывода, мы могли бы сделать что-то вроде:
Хотя это может ничего не значит для вас прямо сейчас, вам рано или поздно нужно будет использовать Get-Member, и чем скорее вы научитесь использовать его, тем лучше. В качестве примера, используя информацию из вывода, мы могли бы сделать что-то вроде:

Start-Process notepad.exe $NotepadProc = Get-Process -Name notepad $NotepadProc.WaitForExit() Start-Process calc.exe

Этот скрипт запустит блокнот, затем назначит вывод «Get-Process -Name notepad» переменной $ NotepadProc, затем мы вызываем метод WaitForExit на $ NotepadProc, который заставляет сценарий останавливаться, пока вы не закроете блокнот, как только вы закроете блокнот то калькулятор запустится.

$ _ (Текущий объект трубопровода)

Хотя это не совсем командлет, это одна из наиболее используемых специальных переменных в PowerShell. Официальное название $ _ - это «текущий объект конвейера». Он используется в скриптовых блоках, фильтрах, процедурных предложениях функций, где-object, foreach-object и switch. Однако на примере проще объяснить, что приводит нас к нашему следующему и окончательному командлету Where-Object.

Where-Object

Where-Object делает именно то, на что это похоже, он выбирает объект, исходя из того, соответствует ли он определенным критериям. Это объединит $ _ и свойства, которые мы можем увидеть с помощью Get-Member. Чтобы продемонстрировать это, мы будем выводить вывод Get-Process в командлет Where-Object.

Get-Process | Where-Object {$_.Name –eq “iexplore”}

Рекомендуемые: