Запуск PowerShell через комбинацию клавиш
Одним из удобных методов запуска оболочки PowerShell, при очень частом использовании, является назначение для нее горячего сочетания клавиш, при нажатии которых вызывается оболочка. Делается, это очень просто. Откройте окно свойств PowerShell, на вкладке «Ярлык» найдите пункт «Быстрый вызов«, по умолчанию он имеет статус нет.
Выберите его и нажмите клавишу Shift или Ctrl, или CTRL+SHIFT, в результате чего у вас подставится конструкция для будущей комбинации и так же нажмите любую клавишу из буквенного диапазона, в моем примере получилось CTRL + SHFT + C. Именно такой комбинацией я буду вызывать свою оболочку PowerShell. Сохраняем настройки. Так же отмечу, что вы легко можете ее отменить или поменять на другую.
Пробую ввести комбинацию быстрого вызова CTRL + SHFT + C, как вижу все прекрасно работает.
Регистрация задачи в планировщике
Теперь, после выполнения минимальных требований в виде ‘action’ и ‘trigger’, мы должны объединить эти объекты. Это делается с помощью команды ‘Register-ScheduledTask’. Дополнительно мы можем определить название и описание создаваемого объекта:
Учитывайте, что вы можете использовать несколько триггеров и действий. Для этого вы должны перечислить их через запятую.
TaskPath указывает где была создана задача. В примере выше это произошло в корне планировщика:
Вы можете использовать аналогичный параметр для регистрации задачи в другой директории:
Способа узнать путь два:
- Через графический интерфейс;
- Через команду ‘Get-ScheduledTask’ (будет рассмотрена ниже).
В powershell есть еще одна команда, которая может участвовать в создании задач «New-ScheduledTask». Основное отличие такой команды в том, она не регистрирует (добавляет) задачу в сервис планировщика. Если бы мы использовали обе команды это бы выглядело так:
Создание выполняемого действия для планировщика
Для создания ‘action’ мы должны указать программу и аргументы. В качестве программы будет сам интерпретатор ‘powershell.exe’, а аргументом будет путь до скрипта. Как говорилось раньше у нас будет несколько объектов (результат команд) и все их нужно будет объединить. Что бы это было возможным мы должны поместить результаты работы в переменные:
Мы так же можем указать параметр ‘WorkingDirectory’, который определяет откуда и будет запущена программа. Учитывая, что ‘powershell.exe’ виден через системные переменные использовать параметр ‘WorkingDirectory’ нам не требуется.
Действия выше аналогичны следующим настройкам в интерфейсе (т.е. так мы обычно добавляем скрипт Powershell в планировщик):
Список версий файлов
Имя файла
powershell.exe
система
Windows 10
Размер файла
430080 bytes
Дата
2017-03-18
Скачать
Подробности файла | ||
---|---|---|
MD5 | be8ffebe1c4b5e18a56101a3c0604ea0 | |
SHA1 | 2ec8af7c1538974d64291845dcb02111b907770f | |
SHA256 | d2434e607451a4d29d28f43a529246dc81d25a2fae9c271e28c55452c09a28a5 | |
CRC32 | 8f508fc1 | |
Пример расположения файла | C:\Windows\System32\WindowsPowerShell\v1.0\ |
Имя файла
powershell.exe
система
Windows 8.1
Размер файла
460288 bytes
Дата
2014-11-21
Скачать
Подробности файла | ||
---|---|---|
MD5 | ef8fa4f195c6239273c100ab370fcfdc | |
SHA1 | 5f0692820151ac639fb8bd399bf087954d5bc46b | |
SHA256 | 0bbf1952ee724d29f04d9ea52cae9c8c781791d57ed127ae7b618704c3395a79 | |
CRC32 | fd4aa28d | |
Пример расположения файла | C:\Windows\System32\WindowsPowerShell\v1.0\ |
Имя файла
powershell.exe
система
Windows 8
Размер файла
454656 bytes
Дата
2012-07-26
Скачать
Подробности файла | ||
---|---|---|
MD5 | e2358d99a000143a8a5ec4ff41749778 | |
SHA1 | 2b291e6e0432bf2654b2cb527a318256f6a33300 | |
SHA256 | 9450421392f7399e93f348325d714ed40e97f3231f1b417a13aa05d3d3530cdb | |
CRC32 | 1289d8d9 | |
Пример расположения файла | 1: C:\Windows\System32\WindowsPowerShell\v1.0\ |
Имя файла
powershell.exe
система
Windows 7
Размер файла
473600 bytes
Дата
-0001-11-30
Скачать
Подробности файла | ||
---|---|---|
MD5 | 852d67a27e454bd389fa7f02a8cbe23f | |
SHA1 | 5330fedad485e0e4c23b2abe1075a1f984fde9fc | |
SHA256 | a8fdba9df15e41b6f5c69c79f66a26a9d48e174f9e7018a371600b866867dab8 | |
CRC32 | 8a8313ef | |
Пример расположения файла | C:\Windows\System32\WindowsPowerShell\v1.0\ |
Имя файла
powershell.exe
система
Windows 7
Размер файла
452608 bytes
Дата
-0001-11-30
Скачать
Подробности файла | ||
---|---|---|
MD5 | 92f44e405db16ac55d97e3bfe3b132fa | |
SHA1 | 04c5d2b4da9a0f3fa8a45702d4256cee42d8c48d | |
SHA256 | 6c05e11399b7e3c8ed31bae72014cf249c144a8f4a2c54a758eb2e6fad47aec7 | |
CRC32 | cb0f024c | |
Пример расположения файла | C:\Windows\System32\WindowsPowerShell\v1.0\ |
Получение необходимых и зависимых служб
Командлет Get-Service имеет два параметра, которые удобно использовать при администрировании служб. Параметр DependentServices получает службы, которые зависят от данной службы. Параметр RequiredServices получает службы, от которых зависит данная служба.
Эти параметры просто отображают значения свойств DependentServices и ServicesDependedOn (псевдоним RequiredServices) объекта System.ServiceProcess.ServiceController, возвращаемого Get-Service, но они упрощают работу с командами и получение этой информации.
Приведенная ниже команда получает службы, необходимые службе LanmanWorkstation.
Приведенная ниже команда получает службы, которым требуется служба LanmanWorkstation.
Вы даже можете получить все службы, имеющие зависимости. Следующая команда делает именно это, а затем она использует командлет Format-Table для отображения свойств Status, Name, RequiredServices и DependentServices для служб на компьютере.
Как Powershell обрабатывает ошибки
До рассмотрения основных методов посмотрим на теоретическую часть.
Автоматические переменные $Error
В Powershell существует множество переменных, которые создаются автоматически. Одна из таких переменных — $Error хранит в себе все ошибки за текущий сеанс PS. Например так я выведу количество ошибок и их сообщение за весь сеанс:
При отсутствии каких либо ошибок мы бы получили пустой ответ, а счетчик будет равняться 0:
Переменная $Error являет массивом и мы можем по нему пройтись или обратиться по индексу что бы найти нужную ошибку:
Свойства объекта $Error
Так же как и все что создается в Powershell переменная $Error так же имеет свойства (дополнительную информацию) и методы. Названия свойств и методов можно увидеть через команду Get-Member:
Например, с помощью свойства InvocationInfo, мы можем вывести более структурный отчет об ошибки:
Критические ошибки (Terminating Errors)
Критические (завершающие) ошибки останавливают работу скрипта. Например это может быть ошибка в названии командлета или параметра. В следующем примере команда должна была бы вернуть процессы «svchost» дважды, но из-за использования несуществующего параметра ‘—Error’ не выполнится вообще:
Не критические ошибки (Non-Terminating Errors)
Не критические (не завершающие) ошибки не остановят работу скрипта полностью, но могут вывести сообщение об этом. Это могут быть ошибки не в самих командлетах Powershell, а в значениях, которые вы используете. На предыдущем примере мы можем допустить опечатку в названии процессов, но команда все равно продолжит работу:
Как видно у нас появилась информация о проблеме с первым процессом ‘svchost111’, так как его не существует. Обычный процесс ‘svchost’ он у нас вывелся корректно.
Параметр ErrorVariable
Если вы не хотите использовать автоматическую переменную $Error, то сможете определять свою переменную индивидуально для каждой команды. Эта переменная определяется в параметре ErrorVariable:
Переменная будет иметь те же свойства, что и автоматическая:
Вам так же будет интересно:
Как открыть PowerShell на Windows 10: возможные способы
Многие пользователи спрашивают, как открыть PowerShell в Windows 10. Владельцы персональных компьютеров могут открывать консоль несколькими способами:
- через стартовое меню «Пуск»;
- через утилиту «Выполнить»;
- с помощью комбинации клавиш;
- через системную папку;
- через командную строку.
Через стартовое меню «Пуск»
- Необходимо на панели задач щелкнуть по кнопке стартового окна.
- Далее в поисковой строке ввести ключевой запрос.
- В завершении появится список программного обеспечения, подходящего под параметры поиска.
- Нужно щелкнуть ПКМ по иконке стартового меню.
- На экране появится диалоговое окно.
- В данном списке требуется найти пункт «Windows PowerShell».
Открыть консоль можно через поисковую строку или с помощью контекстного меню параметров
С помощью утилиты «Выполнить»
- Требуется открыть утилиту «Выполнить», нажав сочетание клавиш «Win + R».
- В поисковой строке нужно прописать имя программы и нажать на кнопку «Enter»
С помощью комбинации клавиш
- На клавиатуре требуется нажать комбинацию клавиш «Win + X».
- На экране появится консоль отладки.
К сведению! В версиях Windows 10 1903 (и более ранние) при нажатии клавиш «Win + X» появляется окно командной строки. В билде 2004 вместо нее запускается основная консоль PowerShell.
Через системную папку
Если нужна консоль PowerShell, где находится Windows 10 она, знает далеко не каждый пользователь. Как ее открыть:
- Нужно перейти в проводник и открыть раздел «Локальные диски».
- На основном томе следует отыскать папку «Windows».
- Затем следует перейти в директорию «System32».
- В данном каталоге следует прокрутить список вниз и найти папку с наименованием «Windows PS».
- Далее необходимо найти исполняемый файл программного обеспечения, который имеет расширение *exe.
- По объекту нужно щелкнуть ПКМ и в диалоговом окне выбрать «Запуск с расширенными правами доступа».
С помощью командной строки
- На клавиатуре требуется нажать сочетание клавиш «Win + R».
- В поисковой строке ввести ключевой запрос «CMD».
- После запуска командной строки следует прописать код «PowerShell».
Когда запуск консоли производится через CMD, то PowerShell будет использовать текстовый интерфейс командной строки
Дополнительные и универсальные методы запуска оболочки
Существуют еще совсем специфические методы открытия оболочки с мощным языком от Microsoft. Самый топорный, это просто найти исполняемый файл и запустить его прямо из расположения в системе. Переходим в вашей Windows 10 по пути:
В итоге у вас откроется папка с ярлыками, которые присутствуют в меню «Пуск», можете их запускать.
Еще можно запустить оригинальный, исполняемый файл, который лежит по пути:
И кликнув по нему правым кликом, вы можете его загружать от имени администратора, с максимальными правами.
Так же вы можете запустить виндоус PowerShell и из окна командной строки, для этого просто введите в нем волшебное слово и нажмите Enter.
Ну и еще напомню метод, запуска новой задачи из оснастки «Диспетчер задач». Откройте «Диспетчер задач», выберите пункт меню «Файл — Запустить новую задачу»
В появившемся окне введите PowerShell.
Ну и последний известный мне метод, это запуск PowerShell, через проводник Windows 10, для этого откройте проводник, выберите пункт меню «Файл — запустить Windows PowerShell», тут будут оба режима.
Удаленная перезагрузка компьютера с помощью PSExec.exe
Одна из наиболее часто используемых утилит в наборе инструментов Sysinternals psexec.exe. Предлагает несколько уникальных возможностей, которые упрощают взаимодействие с удаленной системой. Применяя подход, отличный от PowerShell и встроенных утилит — psexec.exe создает в удаленной системе службу, через которую затем передаются команды.
- — используйте не интерактивно, не дожидаясь завершения процесса.
- — если целевая система Vista или выше, запустите этот процесс, используя токен с повышенными правами учетной записи.
- — указывает тайм-аут в секундах при подключении к удаленному компьютеру
Как обновить PowerShell
- В первую очередь необходимо скачать пакет прикладных программ Windows Management Framework. Версия утилиты должна быть 5.1.
- Также потребуется установить клиент NET Framework 4.5.2.
- После этого нужно запустить Повер Шелл с расширенными правами доступа.
- Далее потребуется ввести исполняемый код «msiexec.exe /package PowerShell-7.0.0-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1».
- Затем нужно выполнить перезагрузку системы. После рестарта консоль будет обновлена до последней версии.
Обратите внимание! Если обновления для PowerShell не могут установиться, необходимо скачать MSI-файл последней версии программного обеспечения и самостоятельно выполнить инсталляцию
Выполните сканирование безопасности
Иногда Windows PowerShell перестает работать из-за атаки вредоносного ПО. Таким образом, вы можете попробовать запустить сканирование безопасности, чтобы антивирусное программное обеспечение автоматически удалило вредоносное ПО.
Ваш компьютер может быть заражен Poweliks, вредоносной программой, которая мешает работе Powershell. С этим вирусом связан файл dllhost.exe * 32 или dllhst3g.exe * 32, и обычно его можно остановить с помощью диспетчера задач.
Таким образом, вы можете сканировать системные файлы с помощью антивируса, такого как Malwarebytes. Если это так, антивирус автоматически удалит их.
Если этот метод не устраняет ошибку Powershell, попробуйте следующий.
Получение служб
Получить службы на локальном или удаленном компьютере можно с помощью командлета . Как и в случае с , использование команды без параметров возвращает все службы. Можно фильтровать по имени, даже используя звездочку как подстановочный знак:
Так как реальное имя службы не всегда очевидно, может потребоваться найти службы по отображаемому имени. Это можно сделать с использованием определенного имени, подстановочных знаков или списка отображаемых имен:
Параметр ComputerName командлета Get-Service можно использовать для получения служб на удаленных компьютерах. Параметр ComputerName принимает несколько значений и подстановочные знаки, что позволяет получить службы на нескольких компьютерах с помощью одной команды. Например, приведенная ниже команда получает службы на удаленном компьютере Server01.
Установка из Microsoft Store
Версия PowerShell 7.1 опубликована в Microsoft Store. Этот выпуск PowerShell можно найти на сайте Microsoft Store или в приложении Store в ОС Windows.
Пакет Microsoft Store обеспечивает следующие преимущества:
- автоматические обновления, встроенные непосредственно в Windows;
- интеграция с другими механизмами распространения программного обеспечения, такими как Intune и SCCM.
Известные ограничения
Пакеты Магазина Windows выполняются в песочнице приложения, которая виртуализует доступ к некоторым расположениям в файловой системе и реестре.
- Все изменения реестра в разделе HKEY_CURRENT_USER при записи копируются в закрытое хранилище, отдельно для каждого пользователя и приложения. Таким образом, эти значения недоступны для других приложений.
- Параметры конфигурации системного уровня, хранящиеся в , нельзя изменить. Это относится и к конфигурации WSMAN. Это означает, что вы не сможете подключать удаленные сеансы к установкам PowerShell на основе хранилища. Поддерживаются конфигурации уровня пользователя и удаленное взаимодействие по SSH.
Подробнее см. Основные сведения о работе упакованных классических приложений в Windows.
Как избавиться от вируса Powershell.exe?
Как удалить вирус Powershell.exe? Для вас есть три полезных метода, поэтому продолжайте читать, чтобы получить подробную информацию.
Первый и самый эффективный способ удалить вирус Windows Powershell — это использовать антивирусное программное обеспечение и средство удаления вредоносных программ.
В Windows 10 есть мощная встроенная функция, которую вы можете использовать — Защитник Windows. Вы можете использовать его для сканирования вашего компьютера. Хотя запуск Защитника Windows для сканирования вашего компьютера может занять у вас много времени, он хорош для удаления вируса Powershell.exe в Windows 10. И вы также можете попробовать использовать другое мощное антивирусное программное обеспечение, такое как McAfee.
Вы можете прочитать этот пост — Бесплатные способы запланировать сканирование в антивирусе Защитника Windows чтобы получить подробную информацию для регулярной проверки на вирусы.
Точно так же вы также можете попробовать установить средство удаления вредоносных программ, которое поможет вам обнаруживать вирусы и вредоносное ПО. И вы можете легко удалить вирусы с помощью этого инструмента.
Метод 2: запустить восстановление системы
Как удалить вирус Windows Powershell? Если вы создали точку восстановления заранее, вы также можете попробовать запустить Восстановление системы, чтобы вернуться к предыдущей точке до того, как вы получили вирус Powershell.exe. Но вы должны выбрать точку восстановления, о которой вы точно знаете, что на вашем компьютере не было вируса Powershell.exe.
Шаг 1: нажмите кнопку Windows + р ключи одновременно, чтобы открыть Бежать диалоговое окно.
Шаг 2: введите Rstrui а затем щелкните да открыть Восстановление системы меню.
Шаг 3. Как только вы дойдете до начального Восстановление системы экран, щелкните следующий продолжать.
Шаг 4. Проверьте Показать больше точек восстановления , затем выберите точку восстановления, которая была создана ранее, и нажмите следующий .
Шаг 4: В следующем окне подтвердите точку восстановления и нажмите Конец . А затем нажмите да . Ваш компьютер будет перезагружен, чтобы применить эти изменения.
После того, как вы выполните эти шаги, вы можете избавиться от вируса Powershell.exe.
Что такое точка восстановления системы и как создать точку восстановления Windows 10? Этот пост покажет вам ответы.
Метод 3: переустановите операционную систему
Если ни один из методов не может помочь вам избавиться от вируса Powershell.exe, вы можете только попробовать переустановить операционную систему.
Шаг 1. Вставьте USB-накопитель в другой рабочий компьютер и загрузите Windows 10. Инструмент для создания медиа на USB-накопитель.
Заметка:
Шаг 2: Создайте установочный носитель, а затем отключите USB-накопитель от рабочего компьютера. Вы можете прочитать сообщение: Полное руководство по инструменту создания Windows 10 Media: как использовать чтобы узнать, как создать установочный носитель.
Шаг 3: Вставьте установочный носитель в свой компьютер и затем измените порядок загрузки, чтобы компьютер загружался с него.
Шаг 4: Выберите Язык для установки , Формат времени и валюты и Клавиатура или метод ввода что ты хочешь. Затем нажмите следующий .
Шаг 5: нажмите Установите сейчас а затем выберите У меня нет ключа продукта .
Заметка:
Шаг 6: Выберите операционную систему, которую хотите установить, и нажмите следующий .
Шаг 7. Примите условия лицензии, а затем выберите любой из типов установки: Обновление: установите Windows и сохраните файлы, настройки и приложения. и Выборочная: установка только Windows (дополнительно) .
Шаг 8: Выберите раздел с текущей установкой Windows. Нажмите следующий .
Шаг 9: Нажмите Установить .
После пошагового выполнения этих операций ваш компьютер несколько раз перезагрузится во время установки. И вы должны помнить, что никогда не выключайте компьютер в процессе.
Сброс Windows 10 VS чистая установка VS новый запуск, в чем разница? Прочтите этот пост, чтобы узнать о них и выбрать подходящий для переустановки ОС.
Читать больше
Изменение пользователя, параметров безопасности и уровня запуска
Создавая задачи в планировщике мы имеем блок ‘Security Options’, который чаще используется с настройками по умолчанию. В этом блоке определяются следующие параметры:
- Пользователь, от имени которого будет выполнен запуск;
- Выполняется ли задача для вошедших в систему пользователей;
- Привилегии запуска (от пользователя/администратора);
- Совместимость.
В графическом интерфейсе эти параметры настраиваются в следующем блоке:
Так же как и в случае с созданием задачи, в случае ее изменения мы создаем разные объекты (результаты команд), которые затем привязываем через команду ‘Set-SchedukedTask’.
С помощью следующих команд мы изменим пользователя, повысим права и изменим совместимость:
Если у вас будет следующая ошибка, то скорее всего она связана с неверным пользователем:
Set-ScheduledTask : No mapping between account names and security IDs was done.
Само собой эти же объекты можно использовать при создании (регистрации) задачи в планировщике:
Учитывайте, что у New-ScheduledTaskSettingsSet около 30 возможных параметров (работа при отключенной батареи, максимальное количество перезапусков и т.д.). В примере выше рассмотрено лишь несколько.
Изменение триггеров и действий
С помощью Set-ScheduledTask так же добавляются и изменяются триггеры и действия. Изменение будут заключаться в полной замене существующих триггеров и действий у задач. Вам просто нужно создать объект по аналогии с тем, как это делалось в предыдущих разделах:
Перезагрузка удаленного компьютера с помощью командлета Restart-Computer
Первый и наиболее распространенный метод, специфичный для PowerShell — это командлет . Этот командлет прост в использовании с гибкими параметрами, некоторые из которых упрощают интеграцию скриптов.
Как вы можете видеть в приведенном ниже примере, это, как правило, наиболее простой метод и подходящее решение для большинства сценариев PowerShell.
- — Система, которую вы собираетесь перезапустить. Этот параметр может принимать следующие сетевые адреса: NetBIOS, IP-адрес или полное доменное имя. Для использования на локальной системе данный параметр использовать не стоит.
- — Используется, если в системе в настоящее время находятся другие пользователи. Этот параметр позволит перезагрузить ПК в любом случае, даже если он занят какими либо процессами.
- — останавливает рабочий процесс до тех пор пока удаленный компьютер не перезагрузится
- — Используется с параметром Wait, это гарантирует, что перезапуск не заблокирует приглашение и процесс на неопределенный срок в случае возникновения проблемы.
- — По умолчанию командлет будет каждые 5секунды опрашивать определенный компонент для проверки, ожидая, пока удаленная система станет доступной. Этот параметр отменяет этот период времени задержки.
Examples
Example 3: Get computer names from a text file
gets a list of computer names from a text file and restarts the computers. The
ComputerName parameter isn’t specified. But because it’s the first position parameter, it
accepts the computer names from the text file that are sent down the pipeline.
uses the Path parameter to get a list of computer names from a text file,
Domain01.txt. The computer names are sent down the pipeline. restarts each
computer.
Example 4: Force restart of computers listed in a text file
This example forces an immediate restart of the computers listed in the file. The
computer names from the text file are stored in a variable. The Force parameter forces an
immediate restart.
uses the Path parameter to get a list of computer names from a text file,
Domain01.txt. The computer names are stored in the variable . prompts
you for a username and password and stores the values in the variable .
uses the ComputerName and Credential parameters with their variables. The Force
parameter causes an immediate restart of each computer.
Example 6: Restart a remote computer and wait for PowerShell
restarts the remote computer and then waits up to 5 minutes (300 seconds) for
PowerShell to become available on the restarted computer before it continues.
uses the ComputerName parameter to specify Server01. The Wait
parameter waits for the restart to finish. The For specifies that PowerShell can run commands on
the remote computer. The Timeout parameter specifies a five-minute wait. The Delay parameter
queries the remote computer every two seconds to determine whether it’s restarted.
Example 7: Restart a computer by using WsmanAuthentication
restarts the remote computer using the WsmanAuthentication mechanism.
Kerberos authentication determines whether the current user has permission to restart the remote
computer. For more information, see
AuthenticationMechanism.
uses the ComputerName parameter to specify the remote computer, Server01.
The WsmanAuthentication parameter specifies the authentication method as Kerberos.
Запуск PowerShell через командную строку
Да, для любителей нестандартных путей, тоже способ есть)) Много способов запуска командной строки описаны здесь. Здесь же я опишу способ, который подходит для современных операционных систем. Нажимаем правой клавишей мыши по углу пуск или жмем Win+X, а в открывшемся меню выбираем подходящую командную строку. Если вам необходим PowerShell с правами администратора, то выбираем и командную строку с правами администратора.
В открывшееся окно вводим powershell и жмём Enter. После этого командная строка будет работать полностью как Windows PowerShell.
3. Запуск Windows PowerShell через окно проводника Windows.
Открываем проводник и переходим в одну из папок:
a) 64bit PowerShell если стоит 64 битная система или 32bit PowerShell, если стоит 32 битная система C:\Windows\System32\WindowsPowerShell\v1.0
b) 32bit PowerShell на 64 битных системах находится в папке: C:\Windows\syswow64\Windowspowershell\v1.0
Можно просто вставить ссылку в адресную строку.
Что такое вирус Powershell.exe?
Для начала нужно знать, что такое Powershell.exe
Подлинный файл Powershell.exe является важной частью системы Windows и находится в подпапках каталога. C: Windows System32 WindowsPowerShell v1.0
Наконечник:Что такое каталог System 32 и почему его не следует удалять?
Как видите, Powershell.exe — это исполняемый файл, связанный с PowerShell, и в нормальном состоянии он не причиняет вреда вашему компьютеру.
Так что же такое вирус Powershell.exe? Это скрытая опасная форма трояна, цель которого — кража ваших данных и информации. И это может помешать вашей деятельности на вашем компьютере. Иногда причиной медленной работы вашего компьютера является вирус Powershell.exe.
Поэтому, чтобы избежать ухудшения ситуации, вам следует как можно скорее удалить вирус Powershell.exe.
Поддерживаемые версии Windows
В следующей таблице приведен список версий PowerShell, сопоставленных с версиями Windows. Эти версии поддерживаются до окончания поддержки версии PowerShell или Windows.
- Обозначение указывает, что версия ОС или PowerShell по-прежнему поддерживается.
- Обозначение указывает, что версия ОС или PowerShell не поддерживается.
- Обозначение 🟡 указывает, что версия PowerShell больше не поддерживается в этой версии ОС.
- Если и версия ОС, и версия PowerShell отмечены , это сочетание поддерживается.
Windows | 7.0 (LTS) | 7.1 (текущая версия) | 7.2 (LTS-предварительная версия) |
---|---|---|---|
Windows Server 2016, 2019 или 2022 | |||
Windows Server 2012 R2 | |||
Windows Server Core (2012 R2 или выше) | |||
Windows Nano Server (1809 или выше) | |||
Windows Server 2012 | 🟡 | 🟡 | |
Windows Server 2008 R2 | 🟡 | 🟡 | |
Windows 11 | |||
Windows 10 1607 и более поздние версии | |||
Windows 8.1 |
Примечание
Поддержка конкретной версии Windows определяется политиками жизненного цикла службы поддержки Майкрософт. Дополнительные сведения см. в разделе:
- Вопросы и ответы о жизненном цикле клиента Windows
- Вопросы и ответы о политике современного жизненного цикла
PowerShell поддерживается в Windows для перечисленных ниже архитектур процессора.
Windows | 7.0 (LTS) | 7.1 (текущая версия) | 7.2 (LTS-предварительная версия) |
---|---|---|---|
Nano Server версии 1803+ | x64, ARM32 | X64 | X64 |
Windows Server 2012 R2+ | x64, x86 | x64, x86 | x64, x86 |
Windows Server Core 2012 R2+ | x64, x86 | x64, x86 | x64, x86 |
Клиент Windows 10 или 11 | x64, x86 | x64, x86, ARM64 | x64, x86, ARM64 |
Клиент Windows 8.1 | x64, x86 | x64, x86 | x64, x86 |
Вы можете проверить версию, которую вы используете, запустив .
3 простых шага по исправлению ошибок POWERSHELL.EXE
Файл powershell.exe из MicrosoftCorporation является частью MicrosoftWindowsOperatingSystem. powershell.exe, расположенный в C:\Windows\winsxs\x86_microsoft-windows-powershell-exe_31bf3856ad364e35_6.1.7600.16385_none_68ec54d7638638f5\ с размером файла 452608.00 байт, версия файла 6.1.7600.16385, подпись not found.
В вашей системе запущено много процессов, которые потребляют ресурсы процессора и памяти. Некоторые из этих процессов, кажется, являются вредоносными файлами, атакующими ваш компьютер. Чтобы исправить критические ошибки powershell.exe,скачайте программу Asmwsoft PC Optimizer и установите ее на своем компьютере
3- Настройка Windows для исправления критических ошибок powershell.exe:
- Нажмите правой кнопкой мыши на «Мой компьютер» на рабочем столе и выберите пункт «Свойства».
- В меню слева выберите ” Advanced system settings”.
- В разделе «Быстродействие» нажмите на кнопку «Параметры».
- Нажмите на вкладку “data Execution prevention”.
- Выберите опцию ” Turn on DEP for all programs and services . ” .
- Нажмите на кнопку “add” и выберите файл powershell.exe, а затем нажмите на кнопку “open”.
- Нажмите на кнопку “ok” и перезагрузите свой компьютер.
Всего голосов ( 87 ), 24 говорят, что не будут удалять, а 63 говорят, что удалят его с компьютера.
Перезагрузка компьютера с задержкой по времени
Еще очень частая ситуация, это перезапуск компьютера, но через определенное время, предположим, через 60 секунд, чтобы какие-то другие вещи успели отработать, очень часто применяется в сценариях и скриптах. Для выполнения это задачи есть командлет Start-Sleep. Пишем команду:
Start-Sleep -Seconds 60; Restart-Computer -ComputerName w10-cl03 -Force
В ключе -Seconds вы задаете время в секундах.
так же у вас есть возможность определить механизм, который используется для аутентификации учетных данных пользователя. Этот параметр был введен в Windows PowerShell 3.0. Называется этот ключ -WsmanAuthentication. На выбор у вас будет пять вариантов: Basic, CredSSP, Default, Digest, Kerberos и Negotiate.
Аутентификация поставщика услуг безопасности учетных данных (CredSSP), при которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, например для доступа к удаленному сетевому ресурсу. Этот механизм увеличивает риск безопасности при удаленной операции. Если удаленный компьютер скомпрометирован, переданные ему учетные данные можно использовать для управления сетевым сеансом.
В моем примере я буду использовать проверку подлинности Kerberos, напоминаю, что для этого у вас на удаленных компьютерах должна быть настроена служба WinRM и политика, определяющая с каких ip-адресов вы можете производить подключение к ней. В итоге команда принимает такой вид:
Restart-Computer -ComputerName w10-cl02, w10-cl03 -Force -WsmanAuthentication Kerberos
После ее выполнения удаленные компьютеры уходят в перезагрузку.
Получение списка служб
Узнать статус всех служб можно так:
Каждый результат выдаваемый командами в PS представляет собою объект. Этот объект содержит разные свойства и методы. Свойства — это например имя или статус. По умолчанию мы видим не все свойства. Что бы узнать какие еще свойства есть у команды нужно выполнить следующее:
Часть свойств реализована в виде ключей. Попробуем вывести сразу все свойства всех сервисов, но в таком случая вывод будет сложно читаемый:
Возможно вывести только имена, статус и тип запуска:
Или выведем информацию по одному сервису:
У сервисов есть короткое имя и отображаемое. Так мы выведем оба:
В именах мы можем использовать маски, а это значит что мы можем не знать полное название и использовать знак * в том месте, где не уверены в названии или написании:
Не желательно указывать отображаемое имя так как язык операционных систем может быть разным и если вы выполняете командлеты удаленно, вероятно будут ошибки:
- Cannot find any service with service name
- Cannot find any service with display name
- Не удается найти службу с отображаемым именем
Кроме этого есть два ключа, которые тоже поддерживают маски:
- Include — включают поиск по какой-то маске или точному соответствию.
- Exclude — исключает упоминание.
Можно сравнить разницу с прошлым примером:
У сервисов несколько статусов:
- Running — запущен.
- Stopped — остановлен.
- Paused — приостановлен (пауза).
По каждому из них мы можем отфильтровать результат:
Кроме этого есть 3 типа запуска:
- Automatic — автоматический запуск вместе с системой.
- AutomaticDelayedStart — запуск после загрузки системы.
- Manual — ручной запуск.
- Disabled — отключенный.
Допустим, что у нас есть какая-то проблема в операционной системе и мы хотим проверить все сервисы, который автоматически запускаются при включении ОС. Для этого нам нужно использовать несколько условий, где статус не равен Running и тип запуска равен Automatic:
Службы могут быть зависимы от других и для проверки этих свойств есть два параметра:
- DependentServices — кто зависит от этого сервиса.
- RequiredServices — от кого зависит этот сервис.
Аналогично параметрам команды выше есть свойства DependentServices и ServicesDependedOn (RequiredServices). Они выводят одно и то же.
Есть несколько свойств, которые не выведены в параметры — это:
- CanPauseAndContinue — можно ли приостановить работу сервиса и возобновить.
- CanShutdown — может ли быть выключен.
- CanStop — может ли быть полностью остановлен.
Эти свойства так же можно увидеть в GUI. В командлете ниже я использую алиас gsv (короткое имя Get-Service):
Каждая команда PS, где присутствует параметр ComuterName, может быть выполнена удаленно. Для удаленного управления в Powershell нужны дополнительные настройки, которые уже описывались в предыдущей статье.
Имена всех компьютеров, с которых мы хотим получить имена сервисов, можно указать через запятую:
Наиболее распространенные проблемы с файлом powershell.exe
Существует несколько типов ошибок, связанных с файлом powershell.exe. Файл powershell.exe может находиться в неправильном каталоге файлов на вашем устройстве, может отсутствовать в системе или может быть заражен вредоносным программным обеспечением и, следовательно, работать неправильно. Ниже приведен список наиболее распространенных сообщений об ошибках, связанных с файлом powershell.exe. Если вы найдете один из перечисленных ниже (или похожих), рассмотрите следующие предложения.
- powershell.exe поврежден
- powershell.exe не может быть расположен
- Ошибка выполнения — powershell.exe
- Ошибка файла powershell.exe
- Файл powershell.exe не может быть загружен. Модуль не найден
- невозможно зарегистрировать файл powershell.exe
- Файл powershell.exe не может быть загружен
- Файл powershell.exe не существует
powershell.exe
Не удалось запустить приложение, так как отсутствует файл powershell.exe. Переустановите приложение, чтобы решить проблему.
Проблемы, связанные с powershell.exe, могут решаться различными способами. Некоторые методы предназначены только для опытных пользователей. Если вы не уверены в своих силах, мы советуем обратиться к специалисту
К исправлению ошибок в файле powershell.exe следует подходить с особой осторожностью, поскольку любые ошибки могут привести к нестабильной или некорректно работающей системе. Если у вас есть необходимые навыки, пожалуйста, продолжайте