Чит-лист PowerShell Commands

Powershell шпаргалка

Що стосується запуску команд у Windows, PowerShell став десь тузом у лунці. Протягом багатьох років ентузіасти обмежувалися обмеженнями командного рядка Windows, але в 2006 році PowerShell став потужною альтернативою.

Що таке PowerShell?

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

Сьогодні PowerShell пропонує користувачам широке середовище, де вони можуть виконувати та автоматизувати завдання управління системою. Користувач може отримати доступ до ресурсів з Active Directory до Exchange Server через одну програму. По суті, PowerShell дозволяє користувачеві отримати доступ:

  • Командний рядок
  • Команди PowerShell
  • .API NET Framework
  • Інструментарій управління Windows
  • Компонентна модель об’єкта Windows

Оскільки PowerShell перетворився на додаток з відкритим кодом, тепер користувачі на базі Linux та Unix можуть отримати доступ до цієї універсальної платформи. PowerShell використовується в основному, щоб допомогти користувачам автоматизувати адміністративні завдання. Замість того, щоб виконувати виснажливі та повторювані завдання, користувач може просто створювати сценарії та видавати команди, і PowerShell виконає їх автоматично. Користувач може налаштувати сотні команд, які називаються cmdlets.

Команди PowerShell

Ось 25 основних команд PowerShell:

Назва командиAliasDescription
Встановити місцеположення cd, chdir, sl Встановлює поточне робоче місце на вказане місце.
Отримайте контент кіт, gc, тип Отримує вміст елемента у вказаному місці.
Add-Content змінного струму Додає вміст до зазначених елементів, наприклад додавання слів у файл.
Встановити вміст sc Записує або замінює вміст у елементі новим вмістом.
Копія-елемент копія, cp, cpi Копіює елемент з одного місця в інше.
Видалити-предмет del, стерти, rd, ri, rm, rmdir Видаляє вказані елементи.
Переміщення-предмет ми, рухатися, mv Переміщує предмет з одного місця в інше.
Набір-предмет си Змінює значення елемента на значення, вказане в команді.
Новий елемент ni Створює новий елемент.
Початок роботи сайб Починає фонове завдання Windows PowerShell.
Порівняти-об’єкт порівняти, діф Порівняє два набори об’єктів.
Група-об’єкт групи Групуйте об’єкти, які містять однакове значення для вказаних властивостей.
Invoke-WebRequest завити, iwr, wget Отримує вміст із веб-сторінки в Інтернеті.
Міра-об’єкт міра Обчислює числові властивості об’єктів, символи, слова та рядки в рядкових об’єктах, таких як файли…
Розв’язати-Шлях рвпа Розв’язує символи підстановки на шляху та виводить вміст контуру.
Резюме-робота rujb Відновлює роботу, що припиняється
Набір змінних набір, св Встановлює значення змінної. Створює змінну, якщо такої із запитаним іменем не існує.
Шоу-командування шсм Створює команди Windows PowerShell у графічному вікні команд.
Сортувати-Об’єкт сортувати Сортуйте об’єкти за значеннями властивостей.
Старт-сервіс сасв Запускає одну або кілька зупинених служб.
Старт-процес соки, почати Запускає один або кілька процесів на локальному комп’ютері.
Призупинити роботу sujb Тимчасово зупиняє завдання робочого процесу.
Зачекайте-робота wjb Пригнічує командний рядок, поки одне або всі фонові завдання Windows PowerShell, що виконуються в сеансі,…
Де-об’єкт ?, де Вибирає об’єкти з колекції на основі їх значень властивостей.
Запис-вихід відлуння, пишіть Надсилає вказані об’єкти наступній команді в конвеєрі. Якщо команда є останньою командою в конвеєрі,…

Ось наша PDF-версія PowerShell Cheat Sheet. Клацніть на зображення нижче, щоб відкрити PDF на окремій вкладці браузера, яку можна зберегти та використовувати як швидку довідку.

Чит-лист PowerShell (PDF)

Comparitech-Powershell-шпаргалка

Як користуватися PowerShell

PowerShell ідеально підходить для корпоративних адміністраторів, які виконують складні операції з управління у великих корпоративних мережах. Замість того, щоб збирати інформацію про сотні різних серверів і служб вручну (що зайняло б тривалий час), ви можете просто запустити скрипт на PowerShell, щоб автоматично повернути вам інформацію.

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

В Udemy є ряд найкращих рейтингів курсів з PowerShell, які можуть вам бути корисними.

PowerShell vs командний рядок

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

Існує деякий кроссовер у синтаксисі між двома платформами, оскільки PowerShell прийме такі команди командних рядків, як ipconfigtocd. Однак вони відомі як псевдоніми, а не командлети. Ще одна ключова відмінність полягає в тому, що PowerShell зосереджений на об’єктах. Кожен фрагмент даних, що виводиться з командлету, є об’єктом, а не текстом. Це полегшує користувачеві орієнтацію на складні дані. Включення .NET Framework також дозволяє сценаріям PowerShell використовувати .NET-інтерфейси. Коротше кажучи, PowerShell – це командний рядок на стероїдах.

Завантаження PowerShell

Перш ніж ми поглибимося в основи використання PowerShell, спочатку потрібно отримати доступ до основного інтерфейсу. Якщо ви користувач Windows 10, тоді ви вже будете мати доступ до PowerShell 5. Користувачі Windows 8-8.1 мають доступ до PowerShell 4, але якщо ви перебуваєте в Windows 7, вам потрібно буде встановити його в .NET рамки. У всіх операційних системах PowerShell пропонує два різних інтерфейси.

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

Для того, щоб запустити PowerShell в Windows 10, вам потрібно бути адміністратором. Увійдіть як адміністратор, натисніть Старт, і прокручуйте свої додатки, поки не знайдете Windows PowerShell. Клацніть правою кнопкою миші та виберіть Запустити від імені адміністратора. У Windows 8.1 просто знайдіть PowerShell у вашому Система папку. Так само в Windows 7 за замовчуванням для PowerShell є каталог Аксесуари після встановлення програми.

Як запустити Cmdlets

Як запустити командлети powerhell

У двох словах, командлет – це команда з однофункціональною функцією. Ви вводите командлети в командний рядок так само, як це було б із традиційною командою чи утилітою. Cmdlets є основним способом взаємодії з CLI. У PowerShell більшість командлетів записується на C # і складається з інструкцій, призначених для виконання функції, яка повертає об’єкт .NET.

У PowerShell можна використовувати понад 200 cmdlets. Командний рядок Windows PowerShell не відрізняється від регістру, тому ці команди можна вводити у верхньому або нижньому регістрі. Основні командлети наведені нижче:

  • Get-Location – Отримайте поточний каталог
  • Встановити місцеположення – Отримайте поточний каталог
  • Переміщення-предмет – Перенесіть файл на нове місце
  • Копія-елемент – Скопіюйте файл на нове місце
  • Перейменуйте – елемент Перейменуйте існуючий файл
  • Новинка – Створіть новий файл

Для повного переліку доступних вам команд скористайтеся командлетом Get-Command. У командному рядку ви введете наступне:

PS C: \> Get-Command

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

Щоб змінити політику виконання, введіть таку команду PowerShell:

PS C: \>   Set-ExecutionPolicy

Щоб змінити на RemoteSigned, введіть таку команду:

PS C: \> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

Переконайтеся, що ви в обліковому записі адміністратора, щоб мати дозвіл на встановлення нової політики виконання.

Як запускати сценарії

як запустити скрипти

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

Для запуску сценарію введіть його папку та ім’я файлу у вікно PowerShell:

PS c: \ powershell \ mynewscript.ps1

Щойно ви зробите це, вибраний сценарій запуститься.

Шукаєте створити власні сценарії PowerShell? Майже 5 тис. Студентів пройшли цей курс Udemy з розширеного сценарію з PowerShell.

Перекриття командами Windows

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

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

Зважаючи на це, важливо зазначити, що вони не вважаються повноцінними командами PowerShell настільки, як вони псевдонімами (ім’я Powershell для командних команд Windows. Тож хоч ви можете спробувати деякі команди командного рядка в PowerShell, вам слід дізнатися скільки нового про нові. Тим не менш, досвід Command Prompt безумовно може допомогти новим користувачам впоратися з PowerShell і вдаритися об землю.

Резервне копіювання бази даних SQL

повноваження SQL

Багато людей використовують PowerShell для резервного копіювання баз даних SQL. Інтерфейс командного рядка може вести повне резервне копіювання бази даних, резервне копіювання файлів та резервне копіювання журналу транзакцій. Існує багато способів резервного копіювання бази даних в PowerShell, але одним з найпростіших є використання команди Backup-SqlDatabase. Наприклад:

PS C: \> Резервне копіювання-SqlDatabase -серверна речовина “Комп’ютер \ екземпляр” – База даних “База даних центральна”

Це створить резервну копію бази даних з назвою “Databasecentral” (або ім’ям вибраної бази даних “.

Щоб створити резервну копію журналу транзакцій, слід ввести:

PS C: \> Backup-SqlDatabase -ServerInstance “Комп’ютер \ екземпляр” -Database “Databasecentral” -BackupAction Log

Це створить журнал транзакцій вибраної бази даних.

Основні команди PowerShell

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

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

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

Наприклад, якщо ви хочете подивитися, як працює Get-Process, введіть:

PS C: \> Get-Help -Name Get-ProcessPS C: \> Set-ExecutionPolicy

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

  • Обмежений – Політика виконання за замовчуванням, яка зупиняє запуск сценаріїв.
  • Усі підписані – Запускатимуть сценарії, якщо вони підписані довіреним видавцем
  • Віддалений підпис – Дозволяє запускати сценарії, створені локально
  • Без обмежень – Політика без обмежень на виконання сценаріїв

PS C: \> Get-ExecutionPolicy

Якщо ви використовуєте PowerShell, ви не завжди можете працювати на сервері, з яким ви знайомі. Запуск команди Політика щодо використання дозволить вам побачити, яка політика активна на сервері перед запуском нового сценарію. Якщо потім ви бачите, що сервер працює над обмеженою політикою, ви можете реалізувати Set-ExecutionPolicy команда змінити його.

Get-Service

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

Наприклад, якщо ви вводили PS C: \> Get-Service, вам буде показаний перелік усіх служб на вашому комп’ютері, їхні статуси та відображувані імена.

Щоб скористатися цією командою для отримання конкретних служб, введіть: PS C: \ Get-Service “WMI *”, щоб отримати всі сервіси, що починаються з WMI.

Якщо ви хочете обмежити вихід на активних службах на своєму комп’ютері, введіть таку команду:

PS C: \ Get-Service | Де-об’єкт {$ _. Статус-екв. “Запуск”}

ConvertTo-HTML

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

Get-PSDrive | ConvertTo-Html

Це повертає масу інформації, тому корисно обмежити її файлом із командою Out-File. Кращою альтернативною командою є:

Get-PSD Drive | ConvertTo-Html | Вихідний файл -FilePath PSDrives.html

Потім це створить HTML-файл у вигляді таблиці. Наприклад:

hthe таблиця

Потім ви можете додати свої кольори та рамки для вдосконалення його подання.

Експорт-CSV (та отримання послуги)

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

Для використання цієї команди введіть:

PS C: \> Get-Service | Export-CSV c: \ service.csv

Важливо пам’ятати, що не форматувати об’єкти перед запуском команди Export-CSV. Це відбувається тому, що форматування об’єктів призводить до того, що у файл CSV розміщуються лише відформатовані властивості, а не самі вихідні об’єкти. У випадку, якщо ви хочете надіслати певні властивості об’єкта до CSV-файлу, ви використовуєте Select-Object cmdlet.

Для використання Select-Object командлет, тип:

PS C: \> Get-Service | Вибір-Ім’я об’єкта, стан | Export-CSV c: \ Service.csv

Get-Process

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

PS C: \ Get-Process

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

PS C: \ Get-Process windowrd, Explorer | Формат-список *

Це забезпечує вам всебічний контроль за всіма активними процесами.

Get-EventLog

отримати командлет безпеки eventlog

Якщо ви хочете отримати доступ до журналів подій (або журналів на віддалених комп’ютерах) під час використання PowerShell, вам знадобиться Get-EventLog командування. Цей командлет працює лише в класичних журналах подій, тому вам знадобляться Get-WinEvent команда для журналів пізніше, ніж Windows Vista.

Для запуску команди журналу подій введіть:

PS C: \> Get-EventLog -Список

Це покаже всі журнали подій на вашому комп’ютері.

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

PS C: \> Помилка Get-EventLog -LogName System -EntryType

Якщо ви хочете отримати журнали подій з декількох комп’ютерів, вкажіть, які пристрої ви хочете переглянути (перелічені нижче як “Server1” та “Server2”). Наприклад:

PS C: \> Get-EventLog – Ім’я для входу “Windows PowerShell” -ComputerName “локальний комп’ютер”, “Server1”, “Server2”.

Параметри, за допомогою яких можна шукати журнали подій, включають:

  • Після – Користувач вказує дату та час, і командлет знайде події, що відбулися після
  • AsBaseObject – Надає System.Diagnostics.EventLogEntry для кожної події
  • AsString – Повертає висновок у вигляді рядків
  • До цього – Користувач вказує дату і час, і командлет буде знаходити події, що відбувалися раніше
  • ComputerName – використовується для позначення віддаленого комп’ютера
  • EntryType – Вказує тип входу подій (помилка, аудит збоїв, аудит успіху, інформація, попередження)
  • Покажчик – Вказує значення індексу, з якого командлет знаходить події
  • Список – надає список журналів подій
  • UserName – Вказує імена користувачів, пов’язані з певною подією

 Стоп-процес

стоп-процес зупинки

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

PS C: \> Stop-Process – Назви «блокнот»

У цьому прикладі користувач припинив Блокнот за допомогою команди Stop-Process.

PowerShell: Потужний інтерфейс командного рядка

Хоча перехід до PowerShell може здатися досить складним, інтерфейс командного рядка працює так само, як і будь-який інший. У нього можуть бути власні унікальні командлети, але безліч інтернет-ресурсів може допомогти вам у вирішенні будь-яких адміністративних завдань. Щоб максимально використати PowerShell, вам просто потрібно звикнути до безлічі доступних вам команд.

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