Windows powershell что это за программа?

Содержание

Знакомство с утилитой PowerShell в системах Windows 7, 8 и 10

Windows powershell что это за программа?

Опытные пользователи операционной системы Windows 10 могли слышать об утилите командной строки PowerShell. Также с ней могут быть знакомы имеющие опыт работы с Windows 7 и 8.1. После многих лет использования приложения командной строки Windows и файлов формата .bat пришло время познакомиться с более функциональным инструментом.

PowerShell является ценным пополнением списка инструментов Windows и его масштаб может отпугнуть некоторых пользователей. Что это — скриптовый язык или командная оболочка? Не стоит беспокоиться: несмотря на обширные возможности, освоить PowerShell по силам каждому.

Шаг 1: установка

Для начала нам необходима сама утилита PowerShell. Если вы работаете с Windows 10, у вас уже установлена версия PowerShell 5. Обновление Windows 10 Anniversary Update использует версию 5.1, но разница незаметна. В Windows 8 и 8.

1 применяется PowerShell 4, чего тоже вполне достаточно. Установка PowerShell на Windows 7 не доставит проблем, но всё же пару лишних шагов придется сделать. В частности, нужно дополнительно установить .Net Framework.

Можно установить Windows Management Framework, в состав которого входит PowerShell.

У PowerShell есть два интерфейса. Опытные пользователи могут выбрать полноценный графический интерфейс, известный как Integrated Scripting Environment (ISE). Новичкам лучше использовать консоль PowerShell, простой текстовый интерфейс в стиле командной строки Windows или даже DOS 3.2.

Для запуска PowerShell от имени администратора в Windows 10 нажмите на кнопку «Пуск» и прокрутите список приложений до Windows PowerShell. В Windows 8.1 ищите Windows PowerShell в папке System в Windows. В Windows 7 оболочка располагается в папке Accessories. В качестве обычного пользователя PowerShell можно запустить точно так же, используя левую кнопку мыши вместо правой.

В любой версии Windows можно применить поиск. Для удобства дальнейшего использования можно закрепить PowerShell на панели задач.

Шаг 2: старые команды Windows

Синтаксис команд Windows в PowerShell работает привычным образом. Например, cd меняет папки, dir показывает список всех файлов и папок внутри текущей папки.

В зависимости от метода запуска консоли PowerShell можно начать в c:\Windows\system32 или в c:\Users\. В примере на скриншоте используется команда cd .. (с пробелом) для перехода на один уровень вверх за раз, затем запускается команда dir для отображения списка файлов и папок в директории C:\.

Шаг 3: установка файлов помощи

Команды вроде cd и dir не являются активными командами оболочки PowerShell. Это так называемые псевдонимы (aliases) —  замены настоящих команд PowerShell. Псевдонимы удобны для тех, кто имеет большой опыт работы с командной строкой. Однако они не затрагивают глубин PowerShell.

Чтобы начать знакомиться с возможностями PowerShell, наберите help и нужную вам команду. На скриншоте показана команда help dir.

Команда help говорит, что dir является псевдонимом команды PowerShell Get-ChildItem. Если набрать get-childitem в PS C:\>, увидите то же самое, что и при использовании команды dir.

Как указано внизу скриншота, файлы помощи для PowerShell не устанавливаются автоматически. Для их получения запустите PowerShell от имени администратора и наберите update-help.

Установка файлов помощи займёт несколько минут, ряд модулей могут отсутствовать —  например, в данном случае не установились Help for NetWNV и SecureBoot.

Когда всё готово, полная система помощи всегда будет давать нужные подсказки.

Теперь наберите команду get-help и любую интересующую вас команду («cmdlet» на языке PowerShell, по-русски командлеты), будет показано её описание. Например, get-help get-childitem выдаёт список опций get-childitem. Также можно вывести разные возможные варианты. Например

get-help get-childitem -examples

выдает семь подробных примеров использования get-childitem. Команда

get-help get-childitem -detailed

включает в себя эти семь примеров и подробные разъяснения каждого параметра в командлете get-childitem.

Шаг 4: получение помощи по параметрам

На скриншоте help dir вы могли заметить два списка под SYNTAX для get-childitem. Наличие двух разных синтаксисов означает возможность применения двух способов запуска командлет. Как держать синтаксис отдельно друг от друга и что означают параметры? Ответ простой, если знать трюк.

Для получения подробностей относительно параметров командлеты get-childitem или любой другой используйте параметр -full:

get-help get-childitem -full

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

Просмотр описания параметров позволяет заметить, что get-childitem даёт возможность получить объект child (вроде названия подпапки или имени файла) в указанном месте, с совпадением определённых символов или без. Например:

get-childItem “*.txt” -recurse

возвращает список файлов «*.txt» в текущей папке и всех подпапках (из-за параметра -recurse). Тогда как

get-childitem “HKLM:\Software”

возвращает список всех ключей реестра верхнего уровня в HKEY_LOCAL_MACHINE\Software.

Если вы когда-нибудь пытались попасть в реестр при помощи командной строки Windows или файлов .bat, вы сможете оценить функциональность этого варианта доступа.

Шаг 5: изучение имён

Есть причина того, почему показанные до сих пор командлеты выглядят сходным образом: get-childitem, update-help, get-help используют единую схему глагол-существительное. Это соглашение применяют все командлеты PowerShell, в них глагол стоит перед единственным существительным. Это понравится тем, кто в своё время пострадал от непостоянства названий команд в языках VB и VBA.

Взгляните на самые распространенные командлеты:

set-location: устанавливает текущую рабочий локацию на определённую локацию

get-content: получает содержимое файла

get-item: получает файлы и папки

copy-item: копирует объект из одной локации в другую

remove-item: удаляет файлы и папки

get-process: получает процессы, запущенные на локальном или удаленном компьютере

get-service: получает сервисы, запущенные на локальном или удаленном компьютере

invoke-webrequest: получает содержимое с веб-страницы в интернете

Для просмотра работы определённой командлеты используйте get-help как в случае

get-help copy-item -full

На основе описания в помощи можно понять, что необходимо командлете. Например, если вы хотите копировать все файлы и папки из Documents в c:\temp, используйте

copy-item c:\users\[username] \documents\* c:\temp

Введя эту команду, вы увидите несколько интересных возможностей окружения PowerShell. Например, если набрать copy-i и нажать кнопку Tab, PowerShell заполнит Copy-Item.  Если неправильно набрать командлету и PowerShell не может распознать её, даётся полное описание того, что было сделано не так.

Попробуйте данную командлету:

invoke-webrequest askwoody.com

Вы получите краткий список заголовков, изображений, ссылок и прочего содержимого веб-страницы. Обратите внимание в get-help на список invoke-webrequest, который «возвращает коллекцию форм, ссылок, изображений и прочие важные элементы HTML» — именно то, что должно показываться на экране.

Некоторые командлеты помогают управлять самим PowerShell:

get-command: список всех доступных командлет

get-verb: список всех доступных глаголов

clear-host: очистка экрана программы-хоста

Разные параметры позволяют уменьшать команды и сужать круг полезных опций. Например, для просмотра списка всех командлет, работающих с сервисами Windows, введите

get-command *-service

Будут показаны все глаголы, доступные с существительным service. Вот их список:

Get-Service

New-Service

Restart-Service

Resume-Service

Set-Service

Start-Service

Stop-Service

Suspend-Service

Можно объединять эти командлеты с другими.

Шаг 6: использование труб

Если вы знакомы с командной строкой Windows или пакетными файлами, то знаете о перенаправлении и трубах. Перенаправление (символ >) и трубы (символ |) берут результат действия и прикрепляют его в другое место. Например, можно перенаправить результат команды dir в текстовый файл или передать результат команды ping в команду find для фильтрования интересных результатов, вроде

dir > temp.txt

Читайте также  Кейт мобайл что за программа?

ping askwoody.com | find “packets” > temp2.txt

Здесь во второй команде find ищет строку packets, взятую из адреса askwoody.com командой ping и объединяет все совпадающие строки в файл под названием temp2.txt.

Первая из этих команд отлично работает в PowerShell. Для запуска второй команды потребуется нечто вроде

ping askwoody.com | select-string packets | out-file temp2.txt

Использования перенаправления и труб значительно расширяет возможности командной строки Windows: вместо бесконечного прокручивания вниз по экрану в поиске текстовой строки можно отфильтровывать нужные команды Windows.

Powershell обладает поддержкой pipe, причём она не ограничена текстом. PowerShell позволяет передавать целый объект из одной командлеты в другую, где объект представляет собой комбинацию данных (называемых свойствами) и действий (методов), которые могут использовать эти данные.

Сложная часть начинается при выстраивании объектов. Поставляемые одним командлетом объекты должны совпадать с типом объектов, принимаемых получающим командлетом. Текст является весьма простым типом объектов, так что если вы работаете с текстом, выравнивание объектов является простой задачей. Остальные объекты не такие элементарные.

Как это понять? Используйте командлету get-member. Если вы хотите знать, какой тип объекта обрабатывает командлета, проведите её через get-member. Например, если вы пытаетесь понять запущенные на компьютере процессы и сузили опции до командлеты get-process, вот как узнать результат командлеты:

get-process | get-member

Запуск этой командлеты выдаёт длинный список свойств и методов для get-process, но в самом начале списка можно увидеть тип объекта, который создает get-process:

TypeName: System.Diagnostics.Process

Нижеприведенный скриншот также показывает свойства get-process под названием get-process Handles, Name, NPM, PM, SI, VM и WS.

Если вы хотите манипулировать результатом get-process для работы с этим командлетом (вместо отображения длинного списка активных процессов на мониторе), нужно найти другую команду, которая в качестве вводных данных принимает System.Diagnostics.Process. Для поиска нужной командлеты снова используйте возможности PowerShell:

get-command -Parametertype System.Diagnostics.Process

Эта командлета выдает список командлет, которые могут обрабатывать System.Diagnostics.Process.

Некоторые командлеты известны тем, что принимают почти любой вид данных. Главной среди них является where-object. Эта командлета пропускает через себя каждый посылаемый по трубе объект, один за одним, и применяет к нему заданной критерии выбора. Существует специальный маркер под названием $_, который позволяет использовать каждый предмет в трубе, один за раз.

Допустим, вы хотите получить список всех запущенных на компьютере процессов с названием «svchost», то есть хотите сопоставить свойство Name процессу svchost. Используйте команду:

get-process | where-object {$_.Name -eq “svchost”}

Командлета where-object смотрит на каждый объект System.Diagnostics.Process, сравнивает .Name этого объекта с «svchost»; если есть совпадения, они выдаются на монитор. Смотрите на скриншот.

Шаг 7: анализ полезных команд PowerShell

К настоящему времени вы уже знаете достаточно много, чтобы суметь нанести урон компьютеру, так что будьте осторожны. Посмотрим, например, часто запрашиваемые команды PowerShell.

Эти команды работают только в Windows 10 и только при запуске PowerShell от лица администратора. Они предназначены для переустановки предустановленных приложений Windows 10 и могут пригодиться тем, кто сначала удалил эти программы, а затем решил вернуть их. Команды выглядит следующим образом:

Get-AppXPackage | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\AppXManifest.xml”}

Если запустить эту команду, игнорируйте обозначенные красным цветом предупреждения, и когда команда выполнена, перезагрузите компьютер; все предустановленные программы в Windows 10 появятся на своих местах.

Вот как работает данная команда. Get-AppXPackage проверяет все пакеты приложений в профиле пользователя. Даже если вы удалили приложение, оно остается в списке профиля пользователя.

Командлета Get-AppXPackage возвращает объект TypeName Microsoft.Windows.Appx.PackageManager.Commands.AppxPackage, который включает в себя полное имя пакета приложения и местонахождения соответствующего файла манифеста XML. Если запустить командлету get-appxpackage, вы увидите длинный список пакетов приложений. Скриншот показывает описание приложения Xbox.

Командлета Foreach посредством цикла проходит через каждый объект в AppXPackage, отправляя их командлету Add-AppxPackage. Согласно get-help для Add-AppxPackage, тут есть два ключевых переключателя:

  • Переключатель -Register используется для регистрации существующих установок пакетов приложений, можно задать параметры DisableDevelopmentMode и Register
  • Переключатель -DisableDevelopmentMode говорит Windows заново зарегистрировать существующий пакет приложения, который был отключён, не зарегистрирован или повреждён.

Строка «$($_.InstallLocation)\AppXManifest.xml» описывает, где расположен файл manifest.xml. Если посмотреть на файлы AppXManifest.xml, вы увидите сложный список идентификаторов приложений, исполняемых файлов и большое количество визуальных элементов, связанных с приложением.

После перезагрузки все добавленные пакеты приложений скачиваются и устанавливаются из магазина Windows Store.

(3 голоса, в среднем: 3.7 из 5)

Источник: https://osdaily.ru/materials/4059

8 полезных возможностей PowerShell 5.0, о которых вы могли и не знать

Windows powershell что это за программа?

PowerShell 5.0 идет с Windows 10, но для предыдущих ОС новая версия вышла в составе Windows Management Framework 5.0 только в конце февраля, причем со второй попытки. Сегодня я расскажу о некоторых нововведениях, но начну с того, зачем вам может понадобиться PowerShell.

@0utsidethebox @vsterkin а зачем к нему приобщаться, в чем преимущества его использования? Вообще хотел бы статью о том на хрена он вообще

— RZ45 (@R45Z) August 13, 2015

Зачем вам нужен PowerShell

Просто так изучать PowerShell нет смысла, и это верно для любого языка – скриптового, программного и даже человеческого. Как и многие решения Microsoft, PowerShell делается с прицелом на бизнес для автоматизации задач по управлению ПК и серверами в организациях.

Ключевое слово здесь автоматизация. Если у вас некая рутинная задача, которую вы хотите автоматизировать, попробуйте выяснить, можно ли это сделать с PowerShell.

В основе скриптового языка лежит мощная программная платформа .NET, поэтому возможности PowerShell простираются намного дальше администрирования.

Как-то раз мне понадобилось удалить один столбец из множества книг Excel 2013. Ручная работа претила, а гугление не давало готового решения. Я создал тему на форуме (да, я тоже иногда задаю вопросы на OSZone :). Мне подходил любой язык, но решение неожиданно для меня оказалось на PowerShell. Как выяснилось, можно загрузить Excel в качестве COM-объекта и манипулировать им дальше.

Впоследствии я не раз использовал модификацию того скрипта для автоматического обновления десятков книг Excel, подтягивающих данные из других файлов. Это сэкономило мне массу времени и сил.

Думаю, идея понятна, и можно уже переходить к новинкам PowerShell 5.0.

Подсветка синтаксиса

В новой консоли намного легче ориентироваться!

Увеличить рисунок

Красный цвет и нумерация строк, однако, из другой оперы.

Поиск по истории в двух направлениях

Сочетания клавиш: Ctrl + R и Ctrl + S
Командлеты: Get-PSReadlineKeyHandler и Set-PSReadlineKeyHandler

Как и в CMD, в PowerShell есть история сессии с навигацией стрелками, a Get-History выводит журнал по аналогии с F7. Полный список сочетаний клавиш, связанных с журналом, можно вывести так:

Get-PSReadlineKeyHandler | ? {$_.function — '*hist*'}

В результатах появились две новые функции поиска по истории, которые показаны на картинке ниже. Работает это очень просто.

  1. Нажмите сочетание Ctrl + R и начните вводить запрос → появится последний найденный результат.
    Увеличить рисунок
  2. Повторите сочетание Ctrl + R, чтобы увидеть предыдущее совпадение, или измените запрос.

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

Спасибо за наводку Антону Дровосекову и Константину Сидякину из нашей группы ВК.

Создание соединений, символических и жестких ссылок

Командлеты: New-Item, Remove-Item, Get-ChildItem

У меня в блоге хватает рассказов про ссылки NTFS, поэтому я не мог обойти вниманием возможность их создания в PowerShell.

#Символическая ссылка на файл New-Item -ItemType SymbolicLink -Path C:\test\MySymLinkFile.txt -Target C:\test\1.txt #Символическая ссылка на папку New-Item -ItemType SymbolicLink -Path C:\test\MySymLinkFolder -Target C:\Windows\ #Жесткая ссылка на файл New-Item -ItemType HardLink -Path C:\Test\MyHardLinkFile.txt -Target C:\test\1.txt #Соединение New-Item -ItemType Junction -Path C:\Temp\MyJunctionDir -Target C:\Windows

Честно говоря, синтаксис команды mklink запомнить проще, поэтому быстрее может получиться так:

iex 'mklink /d C:\test\MySymLinkFolder C:\Windows'

Создание временного файла

Командлет: New-TemporaryFile

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

#Создание временного файла New-TemporaryFile #Создание временного файла и получение его полного пути $tmpfile = (New-TemporaryFile).FullName $tmpfile

При создании CheckBootSpeed у меня была именно такая задача – записать собранные данные во временный файл, показать его в блокноте и удалить. Командлета не было, но Василий Гусев подсказал такой вариант:

$file = [System.IO.Path]::GetTempFileName()

Здесь обратный случай – командлет легче запомнить, чем класс .NET. В утилите я сейчас такой способ не использую, но на заметку взял.

Очистка корзины

Командлет: Clear-RecycleBin

Для очистки корзины сделали новый командлет, который пригодится администраторам в рутинных скриптах по обслуживанию ПК.

Clear-RecycleBin c: -Force

Создание и распаковка архивов

Командлеты: Compress-Archive и Expand-Archive

Архивация файлов в ZIP – очень распространенная задача, и я не понимаю, почему Microsoft так долго тянула с простой реализацией в PowerShell.

Читайте также  Kiessetup что это за программа?

#Упаковка папки в архив Compress-Archive -LiteralPath C:\test\ -DestinationPath C:\archive\test2.zip #Создание архива со всем содержимым папки Compress-Archive -Path C:\test\* -DestinationPath C:\archive\test1.zip #Распаковка архива Expand-Archive -Path C:\temp\test1.zip 'C:\testew folder\'

Копирование файлов между сессиями

Командлет: Copy-Item

Новая возможность командлета copy упрощает администраторам вполне типовую задачу копирования файлов на удаленный ПК. На целевой машине должна работать служба удаленного управления WinRM, которая конфигурируется одной командой:

Enable-PSRemoting

Для подключения к машине в доверенном домене больше ничего не требуется. В рабочей группе надо на своем ПК добавить целевой компьютер в доверенные узлы по имени ПК или IP-адресу:

#добавить ПК в доверенные узлы Set-Item wsman:localhost\client\trustedhosts -value «192.168.1.113» #убрать ПК из доверенных узлов #Set-Item wsman:localhost\client\trustedhosts -value «»

Дальше вы создаете новую сессию, указывая имя пользователя для подключения к удаленному ПК, и вводите учетные данные. В созданную сессию можно копировать файлы.

$rs = New-PSSession -ComputerName 192.168.1.113 -Credential test-pc\vadim Copy-Item -Path «C:\temp\my.csv» -Destination «C:\temp\» -ToSession $rs

Полезное дополнение к возможностям удаленного управления PowerShell, согласитесь.

Управление пакетами (автоустановка программ)

Модуль: PackageManagement

В Windows 10 встроено управление поставщиками пакетов (оно же OneGet), с помощью которого вы можете загрузить и тихо установить сразу несколько приложений одной командой! Это похоже на Apt-Get в Linux, но можно провести и параллели с Ninite или InstallPack (кто-нибудь пользуется?)

Увеличить рисунок
Архитектура управления пакетами

Я редко делаю чистую установку основной системы, но на ВМ это происходит регулярно. И OneGet очень удобен для быстрой автоустановки ключевого набора программ.

Примечание. Можно использовать этот модуль, не устанавливая WMF 5.0. Предварительная версия модуля для PS 4.0 и 3.0 доступна отдельно — март 2016 тут, а более свежие ищите поиском в центре загрузки по запросу PackageManagement PowerShell Modules Preview.

Установка программ

В этом примере из репозитория Chocolatey устанавливаются четыре программы и полный набор утилит Sysinternals. Первые три команды выполняются однократно, причем смену политики надо подтвердить. Четвертая команда тихо устанавливает перечисленные программы, а пятая просто экономит время.

#Разрешить установку подписанных пакетов из Интернета Set-ExecutionPolicy RemoteSigned #Установить поставщик Chocolatey Get-PackageProvider –Name Chocolatey -ForceBootstrap #Сделать Chocolatey доверенным Set-PackageSource -Name Chocolatey -Trusted #Установить программы Install-Package NotepadPlusPlus, vlc, firefox, filezilla, sysinternals -Verbose -Force -ProviderName chocolatey #Добавить путь к исполняемым файлам (sysinternals) в PATH setx PATH «$env:path;C:\Chocolatey\bin» -m

Поставщик скачивает в C:\Chocolatey\lib пакет, в основе которого лежит скрипт chocolateyInstall.ps1. Он загружает установщик программы с официального сайта в папку %temp%\Chocolatey и запускает его в режиме тихой установки. Простейший пример – Notepad++.

Install-ChocolateyPackage 'notepadplusplus' 'exe' '/S' 'https://notepad-plus-plus.org/repository/6.x/6.9/npp.6.9.Installer.exe'

Поиск программ

В репозиториях много программ, все самые популярные точно есть.

Find-Package '*zip*','*commander*' -ProviderName Chocolatey

Удаление программ

С удалением приложений не все так гладко, впрочем.

Uninstall-Package -name filezilla

В идеале удаление пакета должно повлечь тихое удаление программы, но реализация зависит от автора пакета и возможностей установщика.

На практике одни пакеты не содержат скриптов для удаления, другие придумывают костыли в виде скриптов AutoHotkey, третьи просто запускают деинсталляцию интерактивно, предлагая вам закончить процесс вручную. Впрочем, если установщик — MSI, удаление работает четко.

Дискуссия и опрос

Для опытных «скриптовиков» и системных администраторов в PowerShell 5.0 есть и другие интересные возможности (например, классы по аналогии с языками объектно-ориентированного программирования). Полный список вы найдете на этой странице TechNet (ссылка ведет на английскую версию специально, поскольку русская пока не содержит сведений о 5.0).

Источник: http://www.outsidethebox.ms/18237/

Windows PowerShell – что это за программа, как ее запустить в Windows 7, 8, 10, команды и командлеты, версия утилиты, Виндовс Пауэр Шелл ISE

Windows powershell что это за программа?

Для многих пользователей, этот неотъемлемый элемент ОС Windows, представляется настоящей загадкой. Открывая его, они видят список из непонятных символов, разобраться в котором для непосвященных не представляется возможным. Но не стоит его недооценивать, это программа, несущая важную управленческую функцию, способна упростить работу с ПК, в чем бы она ни выражалась.

Утилита полностью автоматизирована, для управления рабочими процессами понадобится минимальное вмешательство человеческого фактора. Все что для нужно — задавать правильные команды. Но прежде чем это делать, нужно разобраться в главном вопросе: Что такое Windows PowerShell, для каких целей он служит и какие функции выполняет.

Краткий обзор программы

По сути, это усовершенствованная версия MS-DOS – старейшей дисковой операционной системы от компании Microsoft, выпущенной еще в середине 80-х гг. прошлого века. Она содержала в себе приложения, с функцией интерпретаторов, далеких от совершенства, умевших задавать несколько простых команд.

Разработчики неоднократно пытались компенсировать недостатки MS-DOS дополнительными компонентами для запуска сценария, такими как MS Script Host, с языками вроде Jscript, но это решало проблему лишь частично. В 2003 г.

началась разработка программы способной заменить старую оболочку, получившую название Monad, известную сейчас как PowerShell. Хотя его впервые запустили в конце 2006 года и включили в ОС Windows XP, в завершенном виде он вышел только спустя 10 лет непрерывных доработок, в 2016 г.

когда получил открытый исходный код. PowerShell широко используется в Windows 7, 8 и 10.

Windows PowerShell – что это такое

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

Это средство автоматизации с расширяемыми свойствами и открытым исходным кодом – оболочка, заключающая в себе интерфейс командной строки с языком сценариев для выполнения скриптов, содержащихся в ней.

Набор скриптов, заключенных в системные файлы имеет расширение PS1, но для удобства пользователей запускается как обычные BAT и CMD файлы.

Таким образом, PowerShell – это не что иное, как скриптовый язык, созданный на платформе .NET для выполнения задач по части управления файлами, сохраненными на системном диске, запущенными процессами и службами.

Кроме того, ему подчинено управление аккаунтами в сети Интернет и любыми настройками, от системных, до настроек функциональности отдельных приложений. Но сам по себе PowerShell только оболочка, основные функции выполняют сопутствующие элементы, наполняющие ее.

Далее постараемся разобраться в PowerShell, чтобы работа с утилитой стала понятна даже «чайникам».

Командлеты

Самые важные — это командлеты, исполняемые файлы, содержащие в себе собственную программу, загружаемую в компьютер для выполнения поставленных задач. Они являются главной составляющей Виндовс Пауэр Шелл, отвечая за его функциональность, и представляют собой набор команд для запуска сценария, вводящегося в командной строке.

Это несколько отличается от запросов, вводимых в поисковой строке браузера, но имеет те же принципы. В оболочке содержится сохраненная коллекция из сотен таких команд, отвечающих за определенные задачи. Формируются командлеты по обычному принципу Глагол + Существительное, что отражает их назначение.

Конвейер

Второй по значимости элемент (тип команд) PowerShell, передающий выходные данные одних командлетов во входные данные других, служит как бы посредником между ними.

Конвейер служит, главным образом, для передачи и возврата не только командлетов, но и любых других объектов. Способен он выполнять и более сложные и ответственные задачи.

А наиболее важно то, что для этого не требуется писать сложные алгоритмы и сценарии.

Разработчики Microsoft при создании конвейера, использовали как наглядный пример аналог, задействованный в Linux, но не копировали его, а сделали его максимально удобным и функциональным. Если сравнивать их, общая между ними только характеристика функций, выраженная в фактически непрерывном потоке данных, содержащих миллионы символов.

Сценарии

Сценарии — менее значимые типы команд в PowerShell, являющие собой блоки кодов, сохраняющиеся в отдельном от остальных файле, но так же поддерживающие расширение PS1.

Главным их преимуществом служит то, что сохраненные коды не нужно каждый раз набирать в ручном режиме.

Не имеет значения, в каком из текстовых редакторов они пишутся, хоть в Word, хоть Paint, принципиально только придерживаться установленного расширения.

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

Для их создания, установлены правила оформления текста, перед именем используется символ «$», путь к сохраненному файлу заключается в фигурные скобки, а обращение к свойствам происходит с использованием «.

» впереди. Сценарии дополняются аргументами

Источник: http://composs.ru/windows-powershell-chto-eto/

Windows PowerShell: что это за программа

Windows powershell что это за программа?

После перехода на операционную систему Windows 10 многие пользователи заметили в интерфейсе Проводника кнопку «Запустить PowerShell». В связи с этим в сети появилось много вопросов, пользователей интересовало, что это за программа Windows PowerShell и для чего она нужна. Если вас также интересует этот вопрос, то данный материал должен вам помочь.

Что такое Windows PowerShell

Windows PowerShell – это скриптовый язык и программа с интерфейсом командной строки для выполнения этих скриптов.

Читайте также  Password manager что это за программа?

Данный язык был выпущен в 2006 году в составе второго сервис-пака для Windows XP и с тех пор PowerShell является частью всех операционных систем от Microsoft.

В 2008 году появилась вторая версия данного языка, и начиная с Windows 7 используется именно она. Файлы со скриптами Windows PowerShell имеют расширение PS1 и могут запускаться как привычные всем BAT и CMD файлы.

Windows PowerShell – это скриптовый язык, который разрабатывался в первую очередь для бизнес-клиентов Microsoft, которым нужно мощные инструменты для автоматизации задач по управлению серверами и компьютерами на базе Windows. В качестве основы для данного языка была использована платформа .NET, разрабатываемая компанией Microsoft с 2002 года.

Windows PowerShell позволяет автоматизировать массу разнообразных задач. С его помощью можно управлять файлами, службами, процессами, аккаунтами и настройками. Язык PowerShell понимает многие команды из обычной Командной строки Windows (CMD), но он имеет и свой собственный язык, состоящий из собственных команд, которые здесь называются командлетами.

Командлеты (на английском cmdlets) формируются по правилу Глагол-Существительное, например, Get-Help. Ознакомиться с основами Windows PowerShell можно с помощью справки (командлет «Get-Help»).

Для получения общей информации просто введите команду «Get-Help», для получения справки о конкретном командлете введите «Get-Help Имя-командлета».

Например, если ввести команду «Get-Help Get-Process», то мы получим справку о командлете Get-Process.

Как запустить программу Windows PowerShell

Программу Windows PowerShell можно запустить разными способами. Самый простой вариант, это просто воспользоваться поиском в меню «Пуск». Для этого откройте меню «Пуск», введите поисковый запрос «Windows PowerShell», после чего откройте найденную программу.

Также можно открыть меню «Выполнить» с помощью комбинации клавиш Windows-R и ввести команду «powershell».

В Windows 10 программу PowerShell можно запустить из любой папки. Для этого нужно нажать на кнопку «Файл» в верхнем левом углу Проводника и выбрать «Запустить Windows PowerShell».

Как пользоваться программой Windows PowerShell

Как мы уже сказали, с помощью программы PowerShell можно автоматизировать многие рутинные задачи в операционной системе Windows. Для примера мы продемонстрируем некоторые возможности, которыми обладает данный инструмент, для того чтобы стало понятно, как им пользоваться.

Очистка корзины. Для очистки корзины существует специальный командлет, который называется «Clear-RecycleBin». Данный командлет пригодится при написании скриптов для обслуживания компьютеров. При выполнении командлета нужно указать диск, на котором нужно очистить корзину. Пример:

Clear-RecycleBin c:

На скриншоте внизу видно, как выполняется данный командлет. После введения команды «Clear-RecycleBin c:» появляется запрос на подтверждение. Для того чтобы продолжить выполнение командлета нужно ввести букву «Y» и нажать Enter.

Если к командлету «Clear-RecycleBin c:» добавить «-Force», то очистка корзины выполнится без запроса на подтверждение. Скриншот внизу.

Архивация файлов. Для архивации и распаковки файлов предусмотрены командлеты «Compress-Archive» и «Expand-Archive«. Например, для того чтобы архивировать папку «C:\test\» в архив «C:\archive\test2.zip» нужно выполнить следующий командлет:

Compress-Archive -LiteralPath C:\test\ -DestinationPath C:\archive\test2.zip

В результате выполнения показанной выше команды, в папке «C:\archive\» появится файл «test2.zip», в котором будет заархивировано содержимое папки «C:\test\».

Список командлетов для Windows PowerShell

Для Windows PowerShell существует огромное количество разных командлетов и описать их все в одной статье не получится. Поэтому предлагаем ознакомиться с самыми востребованными из них:

  • Get-Help – получение справки;
  • Update-Help – обновление справки;
  • Get-Command – поиск командлетов;
  • Get-Alias – поиск псевдонимов для командлетов;
  • Get-PSDrive – просмотр подключенных дисков;
  • Get-Member – просмотр свойств и методов, которые есть у объекта;
  • Get-WindowsFeature – просмотр сведений о доступных ролях и компонентах сервера;
  • Install-WindowsFeature (аналог Add-WindowsFeature) — устанавливает роли или компоненты на нужный сервер;
  • Uninstall-WindowsFeature (аналог Remove-WindowsFeature) – удаляет роли или компонента сервера;
  • Get-History – просмотр истории команд, которые вводились в этой сессии;
  • Get-Variable – просмотр списка переменных и их значений;
  • New-Variable – создание новой переменной;
  • Set-Variable – установка значения переменной;
  • Clear-Variable – удаление значения переменной;
  • Remove-Variable – удаление переменной и ее значения;
  • Format-List – просмотр результата команды в виде списка свойств, где в каждой строке отдельное свойство;
  • Format-Table — просмотр результата команды в формате таблицы;
  • Format-Wide — просмотр результата команды в виде широкой таблицы, в которой показывается только одно свойство для каждого объекта;
  • Format-Custom – просмотр результата команды с использованием пользовательского представления;
  • Export-Csv – экспорт данных в формат CSV;
  • Import-Csv – импорт данных из CSV файла;
  • Export-Clixml — экспорт данных в формат XML;

Полный список командлетов для Windows PowerShell вы можете получить, выполнив командлет «Get-Command -CommandType cmdlet».

Источник: https://comp-security.net/windows-powershell-%D1%87%D1%82%D0%BE-%D1%8D%D1%82%D0%BE-%D0%B7%D0%B0-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0/

Windows PowerShell что это за программа

Windows powershell что это за программа?

Устанавливая новую версию операционной системы Windows, начинающие пользователи встречают новые названия программ, которых раньше, возможно не слышали и предназначение которых им не понятно.

Одно из таких приложений PowerShell. Если оно предустановлено в ОС, значит для чего-то оно служит. Что это за программа Winodws PowerShell, часто задаются этим вопросом пользователи.

Давайте ее рассмотрим подробнее.

Рабочее окно PowerShell

Это приложение является полезным инструментом для системных администраторов и разработчиков, но для других пользователей, тем более для начинающих, оно мало чем полезно.

Windows PowerShell представляет собой современную, усовершенствованную командную строку, которая способна предоставлять более гибкую работу с настройками и управлению компьютера в операционной системе Windows.

Иными словами, та же командная строка с дополнительными возможностями.

Возможности и предназначение программы PowerShell

Видно, что эта программа Winodws PowerShell является интерфейсом для скриптового языка, а также является платформой для выполнения этих скриптов.

PowerShell был выпущен в 2006 году, который входил во второй сервис-пак и с того времени программа стала частью всех операционных систем компании Microsoft.

Скрипты данной программы имеют расширение PS1 и способны запускаться, подобно файлам BAT и CMD.

Этот скриптовый язык разрабатывался, прежде всего, для деловых клиентов Microsoft, которым требуются мощные инструменты автоматизации различных задач в управлении компьютерами и серверами, под управлением Windows. За основу для языка взята платформа .NET от Microsoft.

Windows PowerShell дает возможность автоматизировать множество различных задач и процессов. Она позволяет установить контроль над службами, аккаунтами, настройками, процессами и т.д.

Скриптовый язык воспринимает все команды из командной строки ОС, в свою очередь имеет богатый собственный язык, который состоит из определенных команд, они называются командлетами (cmdlets). Эти командлеты работают по принципу Глагол + Существительное. К примеру, «Get-Help», что в переводе с английского означает «Получить Помощь».

Этот командлет вызывает справку. Для того, чтобы получить информацию о каком-либо командлете, введите «Get-Help Get-Process». В этом случае программа предоставит информацию о камендлете «Get-Process».

Запуск и работа в Windows PowerShell

Есть несколько различных способов запустить программу Windows PowerShell в ОС. Для простоты поиска программ в операционной системе существуют окно поиска.

Его можно найти, открыв ярлык «Мой компьютер» в верхней части экрана с правой стороны. Введите запрос «PowerShell» и в результатах поиска откройте программу.

В Windows 10 программу можно запустить из любой рабочей папки, для этого нужно сделать клик по кнопке «Файл» в верхней части слева.

Запуск PowerShell

Для того, чтобы продемонстрировать как работает эта программа Windows PowerShell, испробуем ее некоторые возможности, например, давайте почистим корзину. Для этой функции есть специальный командлет – «Clear-RecycleBin».

Он пригодится для написания скрипта при обслуживании компьютеров. При вводе такой команды, нужно указать локальный диск, на котором расположено приложение, с которым необходимо выполнить это действие: «Clear-RecycleBin C:».

Далее появится строка с запросом на подтверждение, здесь необходимо нажать клавишу «Y» и «Enter».

Очистка корзины с помощью PowerShell

Если к командлету «Clear-RecycleBin C:» добавить часть «-Force», корзина очиститься без подтверждения.

  1. Давайте распакуем архив при помощи программы PowerShell.
  2. Для этого существуют заданные команды «Expand-Archive» и «Compress-Archive».
  3. Для того, чтобы заархивировать папку «C:\file\» в «C:\archive\file2.zip», следуйте указанной команде: «Compress-Archive –LiteralPath C:\file\ -DestinationPath C:\archive\file2.zip.
  4. В результате исполнения этой команды в указанной выше директории появится архив с именем «file2.zip», в котором будет заархивировано содержимое папки «C:\file\».

Основные командлеты программы PowerShell

У этой программы есть масса разных команд, применяемых к различным компонентам Windows и описать их все в это статье не выйдет. Вот некоторые основные команды Windows PowerShell:

  1. «Update-Help» — обновление справки для определенного компонента.
  2. «Get-Help» — получение справки.
  3. «Get-Command» — поиск из списка командлетов.
  4. «Format-Table» — обзор результата определенной команды в таблице.
  5. «New-Variable» — новая переменная.
  6. «Remove-Variable» — удаление значения переменной.
  7. «Set-Variable» — указать значение для переменной.
  8. «Format-Wide» — обзор результата выполненной команды в виде таблицы, в которой присутствует только одно свойство для одного объекта.

Как вы оцените статью?
(1 5,00 из 5)
Загрузка…

Источник: https://RusAdmin.biz/bloknot/windows-powershell-chto-eto-za-programma/

Понравилась статья? Поделиться с друзьями:
О компьютерах просто