Как записать вывод ошибок в виде переменной в PowerShell?
.NET. Он основан на командах PowerShell, называемых командлетами. Объединив их в заданном порядке, вы сможете выполнить практически любую операцию из окна PowerShell. Чтобы объяснить, как это работает, мы составили краткий список наиболее важных команд PowerShell.Полезно знать : Windows не может найти «Powershell.exe» ? Узнайте, что сделать, чтобы вернуть его.
Как использовать команды PowerShell
Чтобы начать использовать командлеты, вам необходимо запустить PowerShell в режиме администратора из меню поиска.
Contents
- 1 Как использовать команды PowerShell
- 2 Основные команды PowerShell
- 3 1. Очистить хост или Cls
- 4 2. Преобразовать в HTML
- 5 3. Get-Command
- 6 4. Получить помощь
- 7 5. Get-Process
- 8 6. Get-Service
- 9 7. Install-Module или Install-Script
- 10 8. mkdir, md, rmdir
- 11 9. Новый элемент
- 12 10. Удалить элемент
- 13 11. Set-ExecutionPolicy
- 14 12. Выбрать-Объект и Сортировать-Объект
- 15 13. Запуск и остановка процесса
- 16 14. Приостановка и возобновление службы
- 17 15. Тестовый путь
- 18 16. Процесс ожидания
- 19 Другие важные команды PowerShell
- 20 Часто задаваемые вопросы
Как использовать команды PowerShell
ме администратора из поиска Windows 11.">Основные команды PowerShell
PowerShell в Windows — это не только активный интерфейс командной строки, но и окно сценариев и программирования, в котором можно запускать любое приложение или процесс по вашему желанию. Несмотря на то, что существует несколько сотен командлетов, для начала вам нужно изучить только самые необходимые.
1. Очистить хост или Cls
Вы допустили ошибку при наборе текста или что-то идет не так, как планировалось? К счастью, в PowerShell есть свои возможности. Удобная команда clear-host
позволяет удалить весь текст с дисплея. Просто введите команду в любую строку на экране, и все мгновенно исчезнет.
Вы также можете использовать более простую команду cls
, часто используемую в командной строке, с PowerShell. Эти две команды в виде открытого текста пригодятся, если вы столкнетесь с сообщением об ошибке.
Чтобы избежать ошибок при вводе в командной строке или окне PowerS
1. Очистить хост или Cls
ru/2022/04/14/vklyuchit-kopirovanie-i-vstavku-komandnoy-stroki-windows-10/" title="скопируйте и вставьте команды">скопируйте и вставьте команды для повышения эффективности.Совет : используйте PowerShell, чтобы скрыть обновления Windows , как показано в этом руководстве.
2. Преобразовать в HTML
Наличие большой строки HTML более эстетично, чем просмотр беспорядочных снимков экрана PowerShell. Это также полезно, когда вам нужно поделиться ошибками сценария и другими событиями PowerShell с членами команды, не имеющими технических знаний.
Все компоненты PowerShell используют объекты.NET, которые мы можем просматривать на экране PowerShell. Чтобы они отображались в полном окне браузера, используйте командлет Convert-to-HTML
. Ниже приведен пример просмотра всех псевдонимов PowerShell в Интернете. Не забудьте использовать отдельную строку перед Invoke-Item.
Get-Alias | ConvertTo-Html | Out-File aliases.htm Invoke-Item aliases.htm
Как только вы выполните команду преобразования HTML, PowerShell предложит вам открыть выходной файл с помощью другого приложения. Использование браузера создаст список объектов, таких как псевдонимы.
3. Get-Command
В основном существует два типа команд: псевдонимы и функции. Псевдонимы PowerShell служат псевдонимом для функции или командлета. По умолчанию Windows сохранила несколько псевдонимов, которые вы можете получить с помощью Get-Command
. Вы также м
2. Преобразовать в HTML
псевдонимы.Другой тип команд в PowerShell — это функции. В них используется утвержденный глагол (например, «get») и простое существительное (например, «StorageNode»).
Мы используем функцию «Выбрать объект» (обратите внимание на комбинацию глагола и существительного) с так называемым переменная среды для имени компьютера для отображения имени локального компьютера.
$env:computername | Select-Object
Функции — это отправная точка расширенного кодирования PowerShell. Вы можете использовать функции, такие как Start-process
, с параметрами и переменными для создания собственных пакетных сценариев , выполняя ряд задач.
4. Получить помощь
PowerShell имеет собственный самообучающийся командлет для устранения неполадок Get-Help
, который отображает все быстрые исправления и справочные статьи в одном окне. Введите команду в конце любого вывода для получения справки по различным модулям. Возможно, вам придется нажать Y, чтобы разрешить обновление версий содержимого справки.
Через Get-help
доступны различные варианты помощи. Например, если вы хотите узнать, что делает Get-process
и каков его точный синтаксис, введите следующее:
Get-Help Get-Process
Совет. Вас беспокоит, что кейлоггеры отслеживают вашу активность на вашем компьютере? Узнайте, как обнаружить кейлоггер в Windows .
5. Get-Process
Get-Process
— это важная команда PowerShell, которая сводит в таблицу полный список процессов на вашем локальном устройстве или удаленном компьютере.
Для получения более подробной информации о процессе вам потребуется указать другие параметры, например идентификатор процесса (PID) или имя процесса.
Существует множество конкретных параметров, которые вы можете включить при определении процесса, который нужно найти:
- Список процессов, указав размер файла в МБ
- Список процессов по приоритету
- Найти владельца процесса
6. Get-Service
На вашем компьютере под управлением Windows запущено множество программ и процессов. Хотя вы можете просмотреть их непосредственно в диспетчере задач, проще просмотреть полный список с помощью Get-service
, который позже можно преобразовать в HTML.
Не помните точное название необходимой вам услуги? Вы можете использовать подстановочный знак (*) вместе с несколькими буквами, которые вы можете вспомнить.
Get-service "xyz*"
Некоторые распространенные флаги, которые работают в сочетании с Get-Service
, включают -DisplayName
, -DependentServices
, -InputObject
и
7. Install-Module или Install-Script
PowerShell — один из самых безопасных вариантов установки пакетов программного обеспечения для Windows, таких как Команды Майкрософт , McAfee Security, Bing Translator, последняя версия Xbox-игры и т. д. Чтобы получить полный список программного обеспечения, поддерживаемого в PowerShell для всех пользователей, введите:
Get-AppxPackage -AllUsers
Лучше всего поискать нужный пакет в Галерея PowerShell , универсальном ресурсе последних пакетов программного обеспечения. Найдя его, введите команду, например Install-module
, Install-Script
или Install-Package
. Ниже показана установка игры Сапер.
Install-Script -Name Minesweeper
Подождите несколько секунд или минут, пока пакет установится через PowerShell. Он будет доступен позже в Windows.
Еще одна полезная команда — Find-package
, которая ищет пакет программного обеспечения на вашем компьютере или в Интернете.
Совет : вы также можете используйте диспетчер оконных пакетов для установки и обновления программ .
8. mkdir, md, rmdir
mkdir
не является собственной командой PowerShell. Однако это широко используемый псевдоним new-item
для создания каталогов, поскольку этот синтаксис очень популярен в DOS и Linux. Когда вы используете mkdir
с именем по вашему выбору, создается пустая папка.
mkdir "name of your empty folder."
Укажите PowerShell на только что созданную папку с помощью простой команды cd
.
cd "name of the newly created folder."
Вновь созданная папка всегда располагает
6. Get-Service
dows\System32, но вы можете использоватьcd
, чтобы указать на другую папку.
Вы можете заменить mkdir
на md
для той же цели, что и выше. Чтобы удалить любое содержимое каталога, используйте команду rmdir
(удалить каталог):
rmdir "name of the folder with empty content."
9. Новый элемент
В отличие от псевдонимов, таких как mkdir
и md
, New-item
— это официальный командлет, используемый в PowerShell для создания новых элементов и установки их значений. Помимо создания файлов и папок, вы можете использовать его для создания ключей и записей реестра.
- Чтобы создать новый каталог с помощью команды
New-item
, введите:
New-item -Path "Directory path location\" -Name "Name of your choice" -Item Type "directory"
- Как только каталог будет создан
7. Install-Module или Install-Script
омеромNew-item
.
New-item -path "Created directory path location\" -Name "File name.txt" -ItemType "file" -Value "insert any text of your choice."
- Вновь созданный файл можно найти в папке назначения.
10. Удалить элемент
Хотите удалить из папки все файлы с расширением, например.TXT,.DOC,.PDF,.WMV? Сначала укажите точный путь к папке с помощью cd
, затем используйте командлет Remove-Item
, как показано ниже:
Remove-Item * -Include *(filetype) - Exclude *(any variable or number)"
Вышеуказанный метод очень полезен для выявления и удаления любых скрытых файлов или файлов, доступных только для чтения, а также для удаления любых файлов со специальными символами.
Полезно знать : возникли проблемы с удалением файла с компьютера? Узнайте, как принудительно удалить неудаляемые файлы в Windows .
11. Set-ExecutionPolicy
В целях безопасности PowerShell имеет собственную политику выполнения, которая влияет на файлы конфигурации, сценарии и другие параметры. Эту функцию безопасности можно выполнить с помощью команды Set-executionPolicy
вместе с флагом, например -force
, который перезаписывает существующие элементы. Он соответствует синтаксису, приведенному ниже.
Set-ExecutionPolicy<br>[-ExecutionPolicy]<br>[[-Scope] ]<br>[-Force]<br>[-WhatIf]<br>[-Confirm]<br>[]
Например, использование команды Set-ExecutionPolicy
для установки прогр
8. mkdir, md, rmdir
ey выглядит так, как показано ниже. После выполнения он загрузит и установит официальное программное обеспечение Chocolatey на ваш компьютер.Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
12. Выбрать-Объект и Сортировать-Объект
Если в вашей папке или подпапке много файлов и расширений, вы можете отсортировать или выбрать их в порядке возрастания или убывания на основе предопределенного свойства. Именно здесь командлеты Sort-Object
и Select-Object
могут помочь вам переупорядочить несколько объектов за один раз.
Сортировку и выбор можно применять к любым файлам в разных папках, а также к существующим процессам на вашем компьютере. Ниже приведен пример сортировки и выбора десяти наиболее важных процессов на основе размера рабочего набора (WS) в мегабайтах.
Get-process | Sort-Object -Property WS | Select-Object - Last "Number of items"
Вы можете использовать сортировку и выбор по различным другим параметрам, таким как историческая информация о различных файлах, сортировка всех элементов списка, содержащихся в файле Блокнота, и сортировка различных событий на вашем компьютере.
13. Запуск и остановка процесса
Если вы хотите запустить новый процесс в Windows ил
9. Новый элемент
процесс, вы можете быстро использовать командлеты PowerShell для достижения этой цели.Чтобы быстро завершить процесс, используйте командлет Stop-Process
. В следующем примере показано, как закрыть процесс для WordPad.
Stop-process -Name "Process or Application name"
Аналогично, чтобы запустить новое приложение непосредственно из окна PowerShell, введите командлет Start-process
и флаг -FilePath
.
Start-Process -FilePath "Application name"
Совет : научитесь остановить запуск фоновых приложений и процессов в Windows и расходовать свои ресурсы.
14. Приостановка и возобновление службы
Вместо запуска или остановки работающей службы вы можете приостановить ее напрямую. Командлет Suspend-service
прост в использовании и помогает снизить нагрузку на ОЗУ и ЦП службами, которые вы в данный момент не используете.
Примечание : вы можете использовать Get-service
, чтобы получить имя приостанавливаемой службы.
Suspend-service -DisplayName "Service full name"
Любую прекращенную службу можно возобновить позже с помощью простой команды Resume-service
. Если вы не уверены, какие службы можно приостановить, не оказывая негативного влияния на вашу систему, используйте следующую команду:
Get-Service | Where-Object {$_.CanPauseAndContinue -eq "True"} | Suspend-Service -Confirm
15. Тестовый путь
Если вы хотите избежать ошибок в пути к файлу в своем программировании, вам необходимо быть уверенным, что путь к файлу в синтаксисе верен. Хотя вы всегда можете проверить это с помощью проводника, более точный способ подтвердить это — использовать командлет Test-path
, который просто отвечает «True» или «False», существует ли данный путь.
Test-Path -Path "Path name"
Вы можете изменить команду, чтобы проверить доступность определенного файла, проверить правильность пути в реестре и определить, есть ли на вашем компьютере друг
11. Set-ExecutionPolicy
нного типа.16. Процесс ожидания
Когда несколько процессов выполняются одновременно, возможно, вам придется подождать, пока один или несколько из них будут остановлены, прежде чем их можно будет использовать снова. Командлет Wait-Process
может очень помочь. Вы можете указать таймаут, в течение которого PowerShell будет ждать, прежде чем процесс будет остановлен.
Wait-Process -Name "Process name, -Timeout (in seconds)
Другие важные команды PowerShell
Помимо перечисленных выше команд PowerShell, также полезно изучить следующие командлеты и функции:
Echo
– это командлет, используемый для вывода любого значения на консоль PowerShell.Get-Host
содержит полную информацию о программе, поддерживающей PowerShell в Windows.Test-JSON
– расширенный командлет, используемый для проверки того, является ли строка допустимым объектом JSO.Trace-command
отслеживает все выражение или команду, чтобы найти содержащиеся в нем параметры и флаги.Write-output
, как следует из названия, выводит результат последней команды в окне консоли.
Совет : ознакомьтесь с этими законные процессы Windows, которые могут выглядеть как вредоносное ПО , чтобы не удалять их из своей системы.
Часто задаваемые вопросы
Как устранить ошибку «Сценарий PowerShell не распознается как имя командлета»?
Если PowerShell не распознает имя командлета, возможно, это связано с неправильной установкой переменной Path. Исправьте любую ошибку переменной пути с помощью исправление неверного пути к папке .