21 Червня, 2022.

10 простих команд PowerShell, які повинні знати всі користувачі Windows

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

Вивчення PowerShell також навчить вас працювати з більшістю Linux адміністративні завдання всередині оболонки bash. PowerShell схожий на те, що ви знайдете в більшості Linux Дистрибутиви

Що таке PowerShell?

Windows PowerShell — це інтерфейс командного рядка та мова сценаріїв, розроблена Microsoft для системних адміністраторів. Але вам не обов’язково бути адміністратором або програмістом, щоб користуватися нею, оскільки вона набагато простіша за інші мови програмування. Він схожий на звичайну англійську мову, і кожен може зрозуміти його та використовувати для адміністрування своїх комп’ютерів.

Команди, які використовуються в Windows PowerShell, відомі як «командлети». Вони дозволять вам активувати певну дію або серію дій на вашому комп’ютері. Ці дії можуть бути простими, як-от вхід у бездротову мережу, або більш складними, як-от автоматизація певних повторюваних завдань. 

Щоб відкрити PowerShell, натисніть Start кнопку, введіть "PowerShell» у вікно пошуку та виберіть Windows PowerShell. Ви відкриєте інтерфейс командного рядка, де зможете почати вводити команди.

У цій статті ми розглянемо десять найбільш корисних і простих команд PowerShell.

1. Get-Help

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

Просто відкрийте вікно PowerShell і введіть текст Отримати допомогу. Це відкриє повний огляд, який навчить вас, що таке PowerShell, і ви зрозумієте його функціональність і структуру. Ви також можете отримати доступ до розширених файлів довідки безпосередньо через інтерфейс. Ви можете завантажити ці файли для подальшого використання. 

Але це ще не кінець команди get-help. тип: 

Отримати допомогу * 

PowerShell перерахує всі командлети, які ви можете використовувати в цей момент. Список, ймовірно, буде величезним, і вам не потрібно вивчати всі відображені командлети. Але сміливо читайте їх і досліджуйте всі доступні вам можливості.

Тип:

Отримати допомогу

Вам не потрібні дужки, просто введіть назву команди, яка вас цікавить, і цей командлет надасть вам основну інформацію про неї. Щоб отримати ще більш детальне пояснення команди, введіть:

Отримати допомогу -Повний

Якщо вам потрібен приклад використання певного типу команди:

Отримати допомогу -Приклад

2.Get-Command

Бажаєте швидко отримати інформацію про певну команду чи набір команд? Командлет Get-Command зробить це за вас. У Get-Command є так багато опцій, але вам, як базовому користувачеві PowerShell, більшість із них не потрібні. Ось деякі основні командлети, які будуть корисні, особливо під час навігації доступними командами.

Якщо вам потрібен список конкретних командлетів одного типу:

Get-Command -

Наприклад, ця складна фраза накаже комп’ютеру відобразити список усіх доступних команд типу командлетів і відсортувати їх за алфавітним порядком іменника в назві:

Get-Command -Type командлет | Sort-Object -Property Noun| Format-Table -GroupBy Noun

Це чудовий приклад більш складної команди, яка змусить PowerShell виконати складне завдання. Зрозумівши синтаксис, ви побачите, що використання PowerShell часто є найшвидшим і найпростішим способом виконання деяких завдань на вашому комп’ютері.

Якщо ви хочете знайти певну команду за її назвою, просто введіть:

Get-Command -Name

Якщо ви не знаєте точної назви команди, яку шукаєте, але знаєте частину назви, ви можете ввести: 

Get-Command -Name -Використовуйте FuzzyMatching

Цей командлет доручить вашому комп’ютеру знайти команди, які точно відповідають тому, що ви ввели в поле. Ви також можете використовувати цей командлет, якщо ви схильні до орфографічних помилок і не хочете, щоб вас постійно виправляли.

3. Get-Content

Якщо ви хочете переглянути вміст файлу, скористайтеся командлетом Get-Content. Вам потрібно буде вказати точне розташування зазначеного файлу, щоб ваш комп’ютер міг його знайти.

У прикладі вище ви можете побачити вміст тестового текстового файлу, створеного для цієї мети. Це проста команда, але якщо ви знаєте, що вона робить, ви можете комбінувати її з іншими командами та виконувати дійсно потужні завдання через Windows PowerShell.

4. Get-Process

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

Якщо ви додасте назву процесу до цього командлета, ви зможете побачити інформацію про певний процес. Наприклад, якщо вам потрібна інформація про процес подання заявки на Discord, просто введіть Get-Process Discord.

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

Пуск-процес  

Щоб зупинити процес, введіть:

Зупинити процес

5. Get-Service

Як системний адміністратор командлет Get-Service може бути дуже корисним для вас. Цей простий командлет відобразить усі служби, які зараз запущені у вашій системі, і дозволить вам керувати ними. Це означає, що ви можете бачити всі програми, які зараз працюють, щоб забезпечити роботу вашого комп’ютера. 

Тепер ви можете використовувати назву служби, щоб керувати нею. Використовуйте такі команди, як Перезапуск-Сервіс щоб відклеїти заморожені, Стоп-Сервіс повністю припинити їх і Старт-Сервіс щоб почати їх знову.

6. Get-Item

Якщо вам потрібен певний елемент, можливо, його буде швидше знайти за допомогою PowerShell, ніж за допомогою панелі пошуку, інтегрованої у вашу операційну систему. Це особливо зручно, якщо ви знаєте місце розташування потрібного файлу. Просто використовуйте команду таким чином:

Get-Item C:

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

Get-Tem C:користувачі *

Якщо вам потрібно отримати дочірній елемент із контейнера, наприклад із системного каталогу, ви можете скористатися командлетом Get-ChildItem. Ця команда покаже вам усі файли та каталоги всередині цього контейнера. Як і у випадку з командлетом Get-Item, вам потрібно буде вказати шлях до контейнера.

Щоб видалити елементи, ви можете замінити суфікс «Отримати» на «Видалити». Це дозволить вам видалити все, від файлів і папок до розділів реєстру та функцій. Тип Remove-Item. Ви можете розробити цей командлет і видалити лише приховані файли та файли «лише для читання» або видалити елементи з певних папок і вкладених папок.

7. ConvertTo-Html

Ця команда допоможе вам перетворити об’єкт .NET у файл HTML, який можна відображати у веб-браузерах. Це вихідний командлет, що означає, що він чудово працює з іншими командлетами. Просто додайте його в кінці інших командлетів і вкажіть певний шлях до файлу. 

Наприклад, якщо ви хочете створити файл HTML, який відображає назву, шлях і компанію всіх поточних процесів локального комп’ютера, введіть: 

Get-Process | ConvertTo-Html - ім'я властивості, шлях, назва компанії - назва «Інформація про процес» | Вихідний файл filename.htm

Замініть filename.htm на будь-яке ім’я файлу.

Щоб відкрити створений файл, використовуйте Командлет Invoke-Item плюс . Вміст має виглядати приблизно так, як на зображенні нижче.

8. Встановити політику виконання

Якщо ви хочете запускати локальні сценарії PowerShell, вам доведеться змінити політику виконання самої PowerShell. На комп’ютерах Windows політика виконання завжди обмежена, і вам потрібно буде змінити її на RemoteSigned або Unrestricted. На комп’ютерах, які не працюють під керуванням Windows, наприклад Linux або Mac, для нього зазвичай встановлено значення Unrestricted, і його не можна змінити. 

Якщо ви хочете дізнатися більше про політику виконання PowerShell, просто введіть:

допомога Set-ExecutionPolicy

PowerShell відобразить файли довідки про політику виконання на вашому комп’ютері або сповістить вас, якщо їх немає. Але він також надасть вам посилання, за яким ви зможете перейти та прочитати про це в Інтернеті.

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

Set-Executionpolicy RemoteSigned

Щоб встановити для нього необмежений тип:

Set-Executionpolicy Unrestricted

Щоб перевірити поточне налаштування політики виконання, введіть: 

Get-Executionpolicy

Оскільки політики виконання є частиною стратегій безпеки PowerShell, вам буде запропоновано підтвердження зміни. Тип Y лише якщо ви впевнені, що бажаєте продовжити.

9. Select-Object

Ця команда використовується для вибору об’єктів і наборів об’єктів, унікальних об’єктів і об’єктів у певній позиції в масиві. Існують різні параметри, за допомогою яких можна вказати об’єкти, які потрібно вибрати. Серед них властивості, числові значення та конкретні об’єкти введення. 

Щоб вибрати об’єкти за атрибутом властивості, вам потрібно буде вказати такі атрибути, як ім’я, ідентифікатор або ЦП. Ви навіть можете групувати атрибути, але ви повинні розділяти їх комами під час введення команди. Щоб побачити командлет Select-Object у дії:

Get-Process | Select-Object -Property ProcessName, Id, CPU

PowerShell перерахує всі поточні процеси та їхні атрибути, як показано нижче.

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

Get-Process Chrome | Select-Object -Property ProcessName -ExpandProperty Modules | Формат-список

Вихід команди «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, і ви повинні побачити щось подібне до наступного зображення.

Адміністратор