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

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

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

Купить акции "голубых фишек"

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

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

Основные командлеты PowerShell для Windows 11

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

1. Откройте меню «Пуск» вашего компьютера.
2. Введите «Терминал Windows» в строке поиска и щелкните его, чтобы открыть приложение.
3. При необходимости откройте окно PowerShell, щелкнув его значок (если он появляется).

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

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

Использование:

  • Получить справку CMDLET-NAME
  • Пример 1: Get-Help Get-Process — получает базовую справку для указанного командлета, но вы также можете указать функцию или сценарий.
  • Пример 2: Get-Help Get-Process -Full — получает дополнительные сведения о командлете Get-Process.
  • Пример 3: Get-Help Get-Process — Имя параметра — извлекает сведения о параметре «Имя» для командлета «Get-Process».
  • Пример 4: Get-Help Get-Process -Online — открывает страницы поддержки Microsoft с информацией об указанном командлете, функции или скрипте.

2. Команда Get

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

Использование:

  • Get-Command
  • Пример 1: Get-Command Get-* — список всех команд, начинающихся с «Get-«.
  • Пример 2: Командлет Get-Command -CommandType — список всех доступных командлетов. Вы можете изменить командлет на «Псевдоним» или Функция.
  • Пример 3: Get-Command -Name «Copy-Item» -Module Microsoft.PowerShell.Management — находит командлет «Copy-Item» в исходном коде модуля «Microsoft. PowerShell.Управление.»

Основные параметры:

  • -Name: Указывает имя искомой команды. Вы даже можете использовать подстановочные знаки, например «*».
  • -CommandType: Этот параметр фильтрует результаты по типу команды (например, командлет, функция и псевдоним).
  • -Модуль: Ограничивает поиск определенным модулем.

3. Get-ChildItem (dir, ls, gci)

В PowerShell команда «‘Get-ChildItem’» действует аналогично команде «dir», позволяя просматривать и обрабатывать элементы, расположенные в различных областях, таких как папки файловой системы, реестр Windows или сертификат. репозитории.

Использование:

  • Get-ChildItem
  • Пример 1: Get-ChildItem -Path C:\ — список всех файлов и каталогов в корне основного установочного диска.
  • Пример 2: Get-ChildItem -Path C:\Windows\ -Filter *.exe — извлекает список всех исполняемых файлов в каталоге «Windows».
  • Пример 3: Get-ChildItem -Path C:\Users\ -Recurse — извлекает список всех файлов в каталоге «Пользователи» и подкаталогах.
  • Пример 4: Get-ChildItem -Path C:\ -Include *.txt,*.docx – извлекает список всех файлов с расширением «.txt» и «. docx» из указанного места.

Основные параметры:

  • -Path: Указывает место, куда можно получить элементы.
  • -Фильтр: этот параметр фильтрует элементы по их именам (например, «*.txt» для всех файлов с расширением «.txt» ).
  • -Include: указывает шаблоны для включения (например, «*.txt» и «*.docx»).
  • -Exclude: определяет исключаемые шаблоны (например, «*.txt»).
  • -Recurse: извлекает элементы из всех подкаталогов в указанном месте.
  • -Depth: Ограничивает глубину рекурсии.
  • -Force: Включает скрытые и системные элементы.

4. Get-Процесс (gps, ps)

Команда «Get-Process» собирает сведения об активных процессах на компьютере, так же, как это делает диспетчер задач. Он способен предоставлять такую ​​информацию, как имя процесса, его идентификатор (также известный как PID), количество используемых им дескрипторов, потребление памяти и процессора, время запуска и учетную запись пользователя, которая его инициировала.

Использование:

  • Get-Process
  • Пример 1: Get-Process -Name notepad Извлекает процесс для приложения «Блокнот».
  • Пример 2: Get-Process -Id 13616 Извлекает процесс с идентификационным номером «13616».

Основные параметры:

  • -Name: Указывает имя извлекаемого процесса и даже поддерживает подстановочные знаки, такие как «*».
  • -Id: Указывает «Идентификатор процесса» (PID) процесса, который необходимо получить.

Связанные командлеты:

  • Stop-Process: завершает запущенные процессы, указав их имя или идентификатор процесса, что помогает управлять не отвечающими приложениями. Например, Stop-Process -Name ‘notepad’
  • Start-Process: запускает процессы, указав их имя или идентификатор процесса. Например, Start-Process -Name ‘notepad’

5. Копировать-элемент (cp, копия, cpi)

Используя команду «‘Copy-Item’», вы можете легко переносить файлы и папки из одного места в другое, используя при этом различные параметры настройки.

Использование:

  • Копировать-Элемент — Путь ИСТОЧНИК — Назначение НАЗНАЧЕНИЕ
  • Пример 1: Copy-Item -Path «C:\Users\UserDemo\Documents\myFile.txt» -Destination «D:\Backup» – копирует файл «myFile. txt» в виде одного файла в папку «Резервное копирование».
  • Пример 2: Copy-Item -Path «C:\Users\UserDemo\Documents» -Destination «D:\Backup\Files» -Recurse — копирует каталог и его содержимое в папку «Файлы».
  • Пример 3: Copy-Item -Path «C:\Logs» -Destination «D:\Backups\Files» -Recurse -Filter «*.log» — только копии файлы с определенным расширением в каталог «Файлы».

Основные параметры:

  • -Path: Указывает исходный путь к копируемым элементам.
  • -Destination: указывает путь назначения для скопированных элементов.
  • -Recurse: копирует все подкаталоги исходного каталога.
  • -Force: перезаписывает существующие файлы в месте назначения (при необходимости).
  • -Фильтр: определяет фильтр для включения или исключения определенных файлов на основе их имен (например, «*.txt»).

6. Удалить элемент (rm, del, стереть, ri, rmdir)

В PowerShell команда «Remove-Item» служит для удаления различных элементов, таких как файлы, папки и т. д., в вашей системе. Оно распространяется даже на нефайловые системы, такие как реестр, хранилище сертификатов и переменные среды. По сути, это сравнимо с командой «del», используемой в командной строке.

Использование:

  • Remove-Item -Path SOURCE-FILE
  • Пример 1: Remove-Item -Path «C:\Users\UserDemo\Documents\myFile.txt» — удаляет только «myFile.txt» из «Документов». папка.
  • Пример 2: Remove-Item -Path «C:\MyFiles» -Recurse — удаляет каталог и все его содержимое.
  • Пример 3: Remove-Item -Path «C:\Users\UserDemo\Documents» -Recurse -Include «*.docx» – удаляет файлы с расширением «.docx». » из папки «Документы».

Основные параметры:

  • -Path: указывает путь к удаляемым элементам.
  • -Recurse: удаляет все подкаталоги в указанном каталоге.
  • -Force: перезаписывает атрибуты, доступные только для чтения, и удаляет скрытые или системные файлы.
  • -Подтвердить: запрашивает подтверждение перед удалением каждого элемента.
  • -WhatIf: Имитирует операцию удаления без удаления каких-либо элементов.

7. Новый предмет (ni)

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

Использование:

  • New-Item -Path PATH\FOLDER-NAME -ItemType Directory
  • Пример 1: New-Item -Path «C:\Random\FileBackup» -ItemType Directory — создает новый каталог (или папку), указанный в пути к указанному файлу. расположение.
  • Пример 2: New-Item -Path «C:\Random\myFile.txt» -ItemType File -Value «Этот текст будет напечатан внутри текстового файла.» – Создает текстовый файл в указанном месте и добавляет в него содержимое «Этот текст будет напечатан внутри текстового файла».
  • Пример 3: New-Item -Path «C:\Random\myFile.txt» -ItemType File – создает пустой текстовый файл в указанном месте.
  • Пример 4: New-Item -Path «HKCU:\Software\MyApp» -ItemType RegistryKey — создает новую запись реестра в указанном месте. .

Основные параметры:

  • -Path: Указывает место, где будет создан новый элемент.
  • -ItemType: Указывает тип создаваемого элемента (например, «Файл», «Каталог» или «RegistryKey»).
  • -Name: Указывает имя нового элемента, который создаст команда.
  • -Значение: определяет исходное содержимое файла.
  • -Force: перезаписывает существующие элементы (при необходимости).

8. Get-Service (gsv)

Используя команду «‘Get-Service’», вы можете собрать информацию о службах, активных в данный момент в вашей системе. Эти данные включают имена служб и отображаемые имена, их текущий статус, режим запуска и любые зависимые службы.

Использование:

  • Получить обслуживание
  • Пример 1: Get-Service -Name «Spooler» — извлекает службу «Spooler».
  • Пример 2: Get-Service -DisplayName «Windows Audio» – извлекает службу «Windows Audio».

Основные параметры:

  • -Name: Указывает имя извлекаемой службы (поддерживает подстановочные знаки).
  • -DisplayName: определяет отображаемое имя службы.
  • -ComputerName: Указывает удаленный компьютер, с которого необходимо получить службы.
  • -Include: указывает шаблоны для включения (например, «Win*»).
  • -Exclude: определяет исключаемые шаблоны (например, «SQL*»).

Связанные командлеты:

  • Start-Service: запускает остановленную службу, позволяя активировать необходимые системные службы. Например, Start-Service -Name ‘wuauserv’
  • Stop-Service: останавливает работающую службу, позволяя прекратить работу ненужных или проблемных служб. Например, Stop-Service -Name ‘wuauserv’

9. Очистить-Хост (cls, очистить)

Функция команды «Clear-Host» эквивалентна команде «cls» в командной строке, поскольку она очищает содержимое текущего окна терминала.

Обычно вы используете эту команду, чтобы навести порядок и улучшить читаемость экрана консоли, особенно после выполнения многочисленных команд или просмотра обширных результатов.

Использование:

  • Очистить хост

10. Установить-Location (cd, chdir)

Команда «Set-Location» позволяет вам перейти в другую папку, действуя так же, как команда «cd» в командной строке, изменяя активный каталог, в котором вы сейчас работаете.

Использование:

  • Установить путь к местоположению
  • Пример 1: Set-Location C:\ — переход к корню диска «C».
  • Пример 2: Set-Location .. — перемещает на один уровень вверх в иерархии каталогов (эквивалент «cd ..»).

11. Get-History (ghy, h)

Используя команду «Get-History», вы можете легко получить список всех команд, которые вы уже вводили в текущем сеансе. Проще говоря, этот командлет позволяет быстро снова выполнить ранее введенные команды без необходимости переписывать их вручную.

Использование:

  • Получить историю
  • Пример 1: Get-History -Count 10 — отображает 10 последних введенных команд.
  • Пример 2: Get-History -Id 123 — отображает команду с идентификатором 123.

Как технический энтузиаст, я хотел бы поделиться полезным советом об истории команд PowerShell! Вы можете настроить количество команд, сохраняемых PowerShell, с помощью параметра «‘$MaximumHistoryCount’». Изначально, начиная с PowerShell 3.0, по умолчанию запоминаются последние 4096 введенных вами команд. Но если вы хотите увеличить этот предел, просто введите ‘$MaximumHistoryCount = 32767’, чтобы установить максимально возможное значение. Приятного написания сценария!

12. Get-Content (gc, cat, type)

Команда «Get-Content» способна читать и отображать содержимое файлов или различных источников данных. Эта команда полезна не только для просмотра текстового файла в интерфейсе командной строки, но ее также можно эффективно использовать для проверки содержимого файла журнала.

Использование:

  • Get-Content -Path PATH-AND-FILENAME
  • Пример 1: Get-Content -Path «C:\Folder\myFile.txt» – считывает содержимое «myFile.txt» и отображает каждую строку в отдельной строке консоли.
  • Пример 2: $fileContent = Get-Content -Path «C:\Folder\myFile.txt» – считывает содержимое «myFile.txt» и сохраняет его в переменная $fileContent.
  • Пример 3: Get-Content -Path «C:\Folder\myFile.txt» -Raw — считывает все содержимое «myFile.txt» как одну строку.
  • Пример 4: Get-Content -Path «C:\Folder\myFile.txt» -TotalCount 5 — считывает первые пять строк «myFile.txt».
  • Пример 5: Get-Content -Path «C:\Folder\myFile.txt» -Tail 3 – считывает последние три строки » мойФайл.txt.»

Основные параметры:

  • -Path: указывает путь к файлу или другому источнику данных.
  • -Raw: считывает все содержимое файла как одну строку, а не как массив строк.
  • -TotalCount: Читается только указанное количество строк от начала файла.
  • -Tail: считывается только указанное количество строк с конца файла.

13. Тест-соединение (ping, tnc)

Командлет «Test-Connection» позволяет вам проверить, есть ли сетевой доступ к удаленному компьютеру или серверу, и он работает почти так же, как команда «ping».

Пока я наблюдаю, эта команда инициирует эхо-запросы протокола управляющих сообщений Интернета (ICMP), часто называемые «пингами», к определенному устройству в сети. Цель? Чтобы проверить, доступно ли это устройство в сети, а также измерить время прохождения туда и обратно для каждого отправленного пинг-запроса.

Использование:

  • Test-Connection -ComputerName ИМЯ-НАПРАВЛЕНИЯ-ИЛИ-IP
  • Пример 1: Test-Connection -ComputerName bing.com — отправляет четыре запроса ping в пункт назначения и отображает подробные результаты.
  • Пример 2: Test-Connection -ComputerName 10.1.4.158 -Count 3 — отправляет три запроса ping на IP-адрес 10.1.4.158.
  • Пример 3: Test-Connection -ComputerName bing.com -Quiet — возвращает True или False в зависимости от того, было ли подключение к bing.com успешным.

Ключевые параметры:

  • -ComputerName: Указывает целевой компьютер или IP-адрес.
  • -Count: определяет количество отправляемых пингов.
  • -Интервал: Указывает интервал времени между пингами.
  • -Quiet: Возвращает только логическое значение (True/False), указывающее успех или неудачу.
  • -TraceRoute: отображает прыжки на этом пути, включая IP-адрес и время ответа для каждого прыжка.

Как аналитик, я обнаружил, что в PowerShell нет прямого эквивалента команды «tracert». Тем не менее, мы можем использовать команду «Test-NetConnection» с переключателем «-TraceRoute» для аналогичной функциональности. Например, вы можете использовать это: «Test-NetConnection -ComputerName bing.com -TraceRoute».

14. Get-NetIPConfiguration

Командлет Get-NetIPConfiguration предоставляет подробную информацию о настройках сетевого адаптера на вашем компьютере.

Вот простая и разговорная перефразировка исходного утверждения: «Этот инструмент предоставит вам полную информацию о каждом сетевом адаптере на вашем устройстве, например, их имена, MAC-адреса, IP-адреса, маски подсети, шлюзы по умолчанию и DNS-серверы.

Использование:

  • Get-NetIPConfiguration
  • Пример 1: Get-NetIPConfiguration -Name «Ethernet0» — показывает сетевую конфигурацию адаптера. В данном случае «Ethernet0», но вы можете указать нужный адаптер.
  • Пример 2: Get-NetIPConfiguration -InterfaceIndex 1 — отображает конфигурацию сети для адаптера с указанным индексом. В данном случае «1», но вы можете указать нужный адаптер.
  • Пример 3: Get-NetIPConfiguration | Select-Object InterfaceName, IPv4Address — отображает только свойства InterfaceName и IPv4Address для всех сетевых адаптеров.

15. Get-NetIPAddress

Командлет Get-NetIPAddress собирает сведения об IP-адресах сетевых интерфейсов локальной системы.

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

Использование:

  • Get-NetIPAddress
  • Пример 1: Get-NetIPAddress -AddressFamily IPv4 — отображает адреса IPv4.
  • Пример 2: Get-NetIPAddress -InterfaceIndex 1 – эта команда отображает информацию об IP-адресе адаптера с индексом «1». Вы можете изменить номер, чтобы отобразить информацию для конкретного адаптера.

Ключевые параметры:

  • -AddressFamily: указывает тип адресов, которые вы хотите получить (например, IPv4, IPv6).
  • -InterfaceIndex: фильтрует результаты на основе индекса сетевого интерфейса.
  • -AddressState: фильтрует результаты на основе состояния адреса (например, «Предпочитаемый», «Устаревший»).

Команда «Get-NetIPAddress» очень похожа на «Get-NetIPConfiguration», но она углубляется в конкретные детали конфигурации IP-адреса. С другой стороны, Get-NetIPConfiguration предлагает более широкую перспективу, предоставляя всеохватывающее представление о сетевых адаптерах и их соответствующих конфигурациях.

Больше ресурсов

Смотрите также

2025-01-15 16:12