10 простых команд PowerShell, которые должен знать каждый пользователь Windows


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

Изучение PowerShell также научит вас выполнять большинство Линукс административных задач внутри оболочки bash. PowerShell похож на то, что вы найдете в большинстве Линукс Дистрибутивы.

Что такое PowerShell?

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

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

Чтобы открыть PowerShell, нажмите кнопку Пуск , введите «powershell » в поле поиска и выберите Windows PowerShell . Откроется интерфейс командной строки, где вы будете готовы начать вводить команды.

В этой статье мы рассмотрим десять наиболее полезных и простых команд PowerShell.

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

Командлет Get-Help — отличное начало работы с PowerShell. Он предоставляет обзор того, что вы можете сделать, а также удобен, когда вам нужна дополнительная информация о конкретном командлете.

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

Но это еще не конец команды get-help. Тип: 

Помощь* 

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

Тип:

Get-Help <имя команды>

Вам не нужны скобки, просто введите имя интересующей вас команды, и этот командлет предоставит вам основную информацию о ней. Для более подробного объяснения команды введите:

Get-Help <имя команды>-Полный

Если вам нужен пример использования определенного типа команды:

Get-Help <имя команды>– пример

2. Get-Command

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

Если вам нужен список конкретных командлетов одного типа:

Get-Command -

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

Командлет Get-Command -Type | Сортировка-Объект-Свойство Существительное| Формат-таблица -GroupBy существительное

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

Если вы хотите найти конкретную команду по ее названию, просто введите:

Get-Command -Name <имя команды>

Если вы не знаете точного названия искомой команды, но знаете часть имени, вы можете ввести: 

Get-Command -Name <имя команды>-UseFuzzyMatching

Этот командлет поручит вашему компьютеру найти команды, которые точно соответствуют тому, что вы ввели в поле <имя>. Вы также можете использовать этот командлет, если вы склонны к орфографическим ошибкам и не хотите постоянно исправлять себя.

3. Get-Content

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

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

4. Get-Process

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

Если вы добавите имя процесса в этот командлет, вы сможете увидеть информацию о конкретном процессе. Например, если вам нужна информация о процессе подачи заявки в Discord, просто введите Get-Process Discord .

Вы можете запустить или остановить процессы через PowerShell, просто заменив префикс «Get» в синтаксисе. Чтобы запустить процесс, введите:

Start-Process <имя или идентификатор процесса>   

Чтобы остановить процесс, введите:

Остановить процесс <имя или идентификатор процесса>

5. Get-Service

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

Теперь вы можете использовать имя службы для управления ею. Используйте такие команды, как Restart-Service <имя службы> , чтобы отключить замороженные службы, Stop-Service <имя службы> , чтобы полностью остановить их, и Start-Service. , чтобы запустить их снова.

6. Get-Item

Если вам нужен конкретный элемент, возможно, его будет быстрее найти с помощью PowerShell, чем с помощью панели поиска, встроенной в вашу операционную систему. Особенно удобно, если вы знаете расположение нужного вам файла. Просто используйте команду следующим образом:

Получить элемент C:

Вы увидите список файлов на жестком диске «C:». Вы можете быть еще более конкретным и искать во всех каталогах профиля пользователя или углубиться в каталоги «документы» или «загрузки». Для этого введите:

Get-Tem C:\users\<имя пользователя>\* .

Если вам нужно получить дочерний элемент из контейнера, например системного каталога, вы можете использовать командлет Get-ChildItem . Эта команда покажет вам все файлы и каталоги внутри этого контейнера. Как и в случае с командлетом Get-Item, вам нужно будет указать путь к контейнеру.

Чтобы удалить элементы, вы можете заменить суффикс «Получить» на «Удалить». Это позволит вам удалить все: от файлов и папок до ключей реестра и функций. Введите Remove-Item . Вы можете доработать этот командлет и удалять только скрытые файлы и файлы, доступные только для чтения, или удалять элементы из определенных папок и подпапок.

7. ConvertTo-Html

Эта команда поможет вам преобразовать объект .NET в файл HTML, который можно будет отображать в веб-браузерах. Это выходной командлет, что означает, что он отлично работает с другими командлетами. Просто добавьте его в конец других командлетов и укажите определенный путь к файлу.

Например, если вы хотите создать  HTML-файл, в котором отображаются имя, путь и компания всех текущих процессов на локальном компьютере, введите: 

Get-процесс | ConvertTo-Html — имя свойства, путь, компания — заголовок «Информация о процессе» | Исходящий файл имя_файла.htm

Замените filename.htm любым именем файла.

Чтобы открыть созданный файл, используйте командлет Invoke-Item plus . Содержимое должно выглядеть примерно так, как показано на изображении ниже.

8. Set-Executionpolicy

Если вы хотите запускать локальные сценарии PowerShell, вам придется изменить политику выполнения самой PowerShell. На компьютерах с Windows политика выполнения всегда ограничена, и вам необходимо изменить ее на RemoteSigned или Unrestricted. На компьютерах, отличных от Windows, таких как Linux или Mac, для него обычно установлено значение «Неограниченно», и его нельзя изменить.

Если вы хотите узнать больше о политике выполнения PowerShell, просто введите:

помощь Set-ExecutionPolicy

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

Чтобы установить политику RemoteSigned, просто введите:

Set-Executionpolicy RemoteSigned

Чтобы установить тип «Неограниченный»:

Set-Executionpolicy без ограничений

Чтобы проверить текущие настройки политики выполнения, введите: 

Get-Executionpolicy

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

9. Выбрать-Объект

Эта команда используется для выбора объектов и наборов объектов, уникальных объектов и объектов в определенной позиции в массиве. Существуют различные параметры, которые вы можете использовать для указания объектов, которые хотите выбрать. Среди них — свойства, числовые значения и конкретные объекты ввода.

Чтобы выбрать объекты по атрибуту свойства, вам необходимо указать такие атрибуты, как имя, идентификатор или процессор. Вы даже можете сгруппировать атрибуты, но при вводе команды их необходимо разделять запятыми. Чтобы увидеть командлет Select-Object в типе действия:

Get-процесс | Select-Object -Property Имя процесса, идентификатор, процессор

PowerShell выведет список всех текущих процессов и их атрибутов, как показано ниже.

Теперь вы можете использовать команду -EpandProperty, чтобы получить подробную информацию о конкретном атрибуте. Если вам нужны подробности о свойстве Modules типа атрибута ProcessName:

Get-Process Chrome | Select-Object -Property ProcessName -ExpandProperty Модули | Список форматов

Вывод команды «Format-list» предназначен для того, чтобы результаты были отформатированы и доступны для чтения.

10. Экспорт – CSV

Иногда команды PowerShell приводят к созданию длинных списков, как мы видели на примере командлета Get-Command. Длинные списки и большое количество информации трудно читать, и вам нужно, чтобы она была более организованной. Для этого экспортируйте все данные в файл CSV. Вы можете сделать это непосредственно в PowerShell, используя функцию Export-CSV.

Например, мы увидели, что командлет Get-Command предоставляет нам длинный список всех доступных командлетов, которые мы можем использовать в PowerShell в данный момент. Вы можете объединить Get-Command и Export-CSV, чтобы создать подробный список со значениями, разделенными запятыми, такими как имя, источник и версия, которые могут распознаваться такими приложениями, как Excel..

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

Get-Command | Выберите имя, источник, версию | экспорт-csv D:\AllCommands.csv

Теперь вы можете открыть список в Excel и увидеть что-то похожее на следующее изображение.

.

Похожие сообщения:


28.06.2022