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

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

КРАТКОЕ ОПИСАНИЕ
Описание функций интегрированной среды скриптов (ISE) Windows
PowerShell и ее требований к системе.

ПОЛНОЕ ОПИСАНИЕ
Windows PowerShell ISE — это ведущее приложение для Windows
PowerShell.
В среде Windows PowerShell ISE можно выполнять команды, а также
создавать, тестировать и отлаживать скрипты с помощью единого
графического пользовательского интерфейса на базе Windows. В ней
имеются функции многострочного редактирования, автозавершения при
помощи клавиши TAB, цветового выделения синтаксических конструкций,
выборочного выполнения, контекстной справки и поддержки языков с
написанием справа налево.

Примечание. Поскольку для этой функции требуется пользовательский
интерфейс, она не работает в ОС Windows Server,
установленной в варианте Server Core.

Среда Windows PowerShell ISE разработана на основе Windows
Presentation Foundation (WPF). Если графические элементы Windows

Основы Windows PowerShell (создание и запуск скриптов | установка версии 5.1 | PowerShell ISE)


PowerShell ISE отображаются некорректно, эту проблему, возможно,
удастся устранить повышением или изменением графических настроек
системы. Это может потребоваться в случае, если в системе
установлен устаревший видеодрайвер или используется ПО
виртуализации.
Дополнительные сведения см. в разделе «Настройки реестра
графического рендеринга» в библиотеке MSDN по адресу
http://go.microsoft.com/fwlink/?LinkId=144711.

Выполнение интерактивных команд

В среде Windows PowerShell ISE можно выполнять любые выражения и
команды Windows PowerShell. Можно использовать командлеты, поставщики,
оснастки и модули так же, как и в консоли Windows PowerShell.

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

С помощью функции многострочного редактирования в области команд можно
вводить (или вставлять из буфера обмена) несколько строк кода
одновременно. При повторе предыдущей команды с помощью клавиши
СТРЕЛКА ВВЕРХ повторно вводятся все строки этой команды. При вводе
команд можно вставить пустую строку после текущей строки с помощью
сочетания клавиш SHIFT+ВВОД.

Просмотр выходных данных

Результаты выполнения команд и скриптов отображаются в области вывода.
Результаты можно копировать и перемещать из области вывода с помощью
сочетаний клавиш или панели инструментов вывода, и результаты можно
вставлять из буфера обмена в другие программы. Также можно очистить
область вывода с помощью кнопки «Очистка области вывода» или любой из
следующих команд:

Разработка скриптов и функций

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

Windows Powershell: Что это и как использовать? Основные команды ️⚙️


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

Функция выборочного выполнения позволяет выполнять скрипты полностью
или частично. Чтобы выполнить часть скрипта, выберите текст, который
требуется выполнить, и нажмите кнопку «Выполнить скрипт» или клавишу F5.

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

Командлеты отладчика Windows PowerShell можно использовать в
области команд так же, как и в консоли.

Функция автозавершения при помощи клавиши TAB

В среде Windows PowerShell ISE предусмотрена функция
автозавершения при помощи клавиши TAB для имен командлетов,
параметров и статических типов Microsoft .NET Framework. Чтобы
воспользоваться этой функцией, введите начало имени команды и нажмите
клавишу TAB.

В Windows PowerShell ISE имеется единый файл справки с
возможностью поиска, в котором описываются среда Windows
PowerShell ISE и оболочка Windows PowerShell. Этот файл справки
содержит всю справочную информацию, которая выводится с помощью
командлета Get-Help. Чтобы просмотреть файл справки в среде Windows
PowerShell ISE, откройте меню «Справка» или нажмите клавишу F1.

Справка является контекстной. Например, если ввести команду
Invoke-Item и нажать клавишу F1, откроется раздел о командлете
Invoke-Item, содержащийся в файле справки.

Кроме того, командлет Get-Help можно использовать в Windows
PowerShell ISE так же, как и в консоли Windows PowerShell.

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

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

Профиль Windows PowerShell ISE

У Windows PowerShell ISE имеется собственный профиль Windows
PowerShell с именем Microsoft.PowerShellISE_profile.ps1. В этом
профиле можно хранить функции, псевдонимы, переменные и команды,
используемые в Windows PowerShell ISE.

Элементы в профилях AllHosts для Windows PowerShell
(CurrentUserAllHosts и AllUsersAllHosts) также доступны в среде
Windows PowerShell ISE, как и в любой другой ведущей программе Windows
PowerShell. Впрочем, элементы в профилях консоли Windows PowerShell
недоступны в среде Windows PowerShell ISE.

Инструкции по перемещению и изменению конфигурации профилей имеются в
справке по Windows PowerShell ISE и в разделе about_Profiles.

Требования к системе

-Операционные системы:
— Windows 7;
— Windows Server 2008;
— Windows Server 2003 с пакетом обновления 2;
— Windows Vista с пакетом обновления 1;
— Windows XP с пакетом обновления 2;

— Microsoft .NET Framework 3.0.

— Для средств удаленного взаимодействия Windows PowerShell требуется
удаленное управление Windows версии 2.0.

— Для выполнения командлета Get-WinEvent требуется Windows Vista (или
последующая версия Windows) и Microsoft .NET Framework 3.5.

— Командлет Export-Counter выполняется только в Windows 7.

Запуск Windows PowerShell ISE

— Чтобы запустить Windows PowerShell ISE, нажмите кнопку «Пуск»,
выберите пункт «Все программы», затем «Windows PowerShell» и
«Windows PowerShell ISE».

Читайте также:
1с enterprise что это за программа

— Или введите «powershell_ise.exe» в консоли Windows PowerShell,
в программе Cmd.exe или в окне «Выполнить».

СМ. ТАКЖЕ
about_Profiles
Get-Help

Источник: www.sites.google.com

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

Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в рунете Pyatilistnik.org. Ранее я вас научил производить установку Windows 11, показал где брать установочный образ. В данной новой ОС есть много новых командлетов PowerShell и еще больше дополнительных модулей, расширяющих функционал.

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

Что такое модуль PowerShell?

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

Различные типы модулей PowerShell

Существует 4 различных типа модулей PowerShell:

  • Скриптовые модули — Самый распространенный тип модуля, не требующий знания C#, в основном любые файлы PSM1, содержащие в основном функции и код, используемые разработчиками скриптов и администраторами.
  • Бинарные модули — Содержат скомпилированный код на основе сборки .NET Framework (DLL), используемый разработчиками командлетов для создания модулей, содержащих командлеты, поставщиков и т. д.
  • Модули манифеста — Скриптовые модули, содержащие манифест, например, с информацией об авторе и т. д.
  • Динамические модули — Специальный тип модуля, который никогда не записывается на диск и существует только в памяти. Элементы динамического модуля (функции/переменные) сразу же доступны в сеансе PowerShell, пока сеанс не будет закрыт.

Где хранятся модули PowerShell

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

$env : PSModulePath

Где хранятся модули PowerShell

Установка модулей PowerShell

Установка модулей очень простой процесс. Чтобы найти установленные, но еще не запущенные модули, запустите теперь известную команду Get-Module -ListAvailable.

список доступных модулей PowerShell

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

список только импортированных модулей

Find-Module -Name VMware . PowerCLI

Find-Module в powershell

Можно найти модули с похожими именами. например все, что связано с Vmware.

Find-Module -Name VMware*

найти модули с похожими именами

Можно найти модуль по минимальной версии или по конкретной версии.

Find-Module -Name VMware . PowerCLI -MinimumVersion 12.5.0.19195797

Find-Module -Name VMware . PowerCLI -RequiredVersion 12.5.0.19195797

найти модуль по минимальной версии или по конкретной версии

Дополнительные ключи смотрите по ссылке — https://docs.microsoft.com/en-us/powershell/module/powershellget/find-module?view=powershell-7.2 .

Далее найдя нужный модуль, установим его, выполните команду.

Install-Module -Name VMware . PowerCLI

установка модуля powershell

Еще можно объединять команды:

Find-Module -Name VMware . PowerCLI -MinimumVersion 12.5.0.19195797 | Install-Module

Дополнительные ключи смотрите по ссылке — https://docs.microsoft.com/en-us/powershell/module/powershellget/install-module?view=powershell-7.2

Как сохранить модули PowerShell

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

Save-Module -Name x Robocopy,Pscx -Path C:TempModule-PowerShell

сохранение модуля powershell

После переноса не забываем импортировать модуль, и если потребуется, то подкрутить политику ExecutionPolicy. Чтобы импортировать удаленный модуль, сначала необходимо создать PSSession (через New-PSSession ). Следующим шагом является импорт модуля, доступного на удаленном устройстве.

Import-Module -Name ActiveDirectory -PSSession $AdminServer -Prefix ‚Rmt’)

Чтобы удалить модуль, команда Remove-Module выполняет эту работу. После удаления все команды, которые когда-то был добавлен модулем, удаляются из сеанса, это работает как реверсия импорта модуля. Обратите внимание, что из локальной сессии будет удален только модуль, но без удаления файлов модуля.

Удаленное использование модуля с другого компьютера

$session = New-PSSession -ComputerName w10-module

Удостоверимся, что на удаленном сервере есть нужные нам модули, через команду:

Get-Module -PSSession $session –ListAvailable

Импорт модуля PowerShell с удаленного компьютера

импортируем теперь в свою текущую сессию нужный модуль с удаленного сервера:

Import-Module -PSsession $session -Name VMware . PowerCLI

После завершите сеанс, когда закончите:

Remove-PSSession $session

Еще можно использовать командлет Invoke-Command. Тут вы подключаетесь к удаленному серверу и импортируете модуль.

$session = New-PSSession -ComputerName w10-module
Invoke-Command -Session $session

Сохраним на локальный компьютер нужный нам модуль.

Export-PSSession -Session $s -CommandName *- PowerCLI * -OutputModule RemSQLServer -AllowClobber

Данная команда создаст на вашем компьютер новый PowerShell модуль VMware . PowerCLI (в каталоге C:Program FilesWindowsPowerShellModules ). Сами командлеты при этом не копируются. Далее закройте сессию.

Remove-PSSession $session

Теперь его можно локально импортировать и использовать.

Как удалить модуль PowerShell

Для удаления модуля со всеми файлами есть командлет Uninstall-Module. Выполните команду:

Uninstall-Module -Name xRobocopy

Где найти сторонние модули и скрипты PowerShell?

Помимо предустановленных модулей самой Windows PowerShell, существует огромное количество сторонних модулей. Для поиска конкретных модулей я рекомендую PowerShellGallery. Он функционирует как центральный репозиторий для обмена и получения кода PoSh, такого как модули, скрипты и многое другое. В основном они распространяются через PSRepository, которые обычно представляют собой веб-серверы, на которых можно публиковать файлы, тогда как эти PSRepos можно размещать у себя или использовать с помощью онлайн-опций, таких как PowerShellGallery. Get-PSRepository откроет список доступных PSRepositories, помеченных информацией о том, публикует ли источник код, одобренный Microsoft или нет ( trusted/untrusted ). Чтобы изменить состояние доверия PowerShellGallery, например, используйте:

Get-PSRepository -Name PSGallery | Set-PSRepository -InstallationPolicy Trusted

Где найти сторонние модули и скрипты PowerShell

На этом у меня все. Мы с вами разобрали полный цикл управления модулями PowerShell. С вами был Иван Сёмин. автор и создатель IT портала Pyatilistnik.org.

Популярные Похожие записи:

  • Создание и использований функций PowerShell
  • Как установить vSphere PowerCLI последнюю версиюКак установить vSphere PowerCLI последнюю версию
  • Ошибка установки Unable to resolve package source в PowerShellОшибка установки Unable to resolve package source в PowerShell
  • Как запустить скрипт PowerShell в WindowsКак запустить скрипт PowerShell в Windows
  • Установка NuGet в Windows
  • Как поменять DNS имя подключения к Remote Desktop Services HAКак поменять DNS имя подключения к Remote Desktop Services HA

Источник: pyatilistnik.org

BootDev

Когда нужно просмотреть информацию о процессах более детально, можно воспользоваться программами на подобии Process Explorer или Process Hacker. А если выбор ограничен? Получить информацию о процессах поможет PowerShell.

Вывод Списка Процессов Системы

Получить информацию о процессах можно с помощью командлета Get-Process . Запускаем PowerShell, и выполняем команду:

# Вывод списка процессов Get-Process

Вывод команды представлен в виде таблицы. По умолчанию выводятся поля: Количество дескрипторов процесса (Handles), Объем невыгружаемой памяти процесса (NPM — Nonpaged System Memory), Объем памяти процесса возможный для записи в файл подкачки (PM — Paged System Memory), Объем памяти процесса выделенный в оперативной памяти (WS — Working Set), Использованное процессорное время (CPU), Имя процесса (ProcessName).

Фильтрация Выводимых Данных

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

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

# Вывод всех процессов с именем «browser» Get-Process browser

Теперь все то же самое, но с использованием масок.

# Вывод всех процессов начинающихся на «bro» Get-Process bro*

Для ясности, знак звездочки * , означает любое количество символов, а знак вопросительного знака ? , один любой символ.

Кроме фильтрации по именам процессов, можно отфильтровать и выводимые поля всей таблицы. К примеру, нас интересуют только поля Id, ProcessName, WS. Причем вывод должен быть именно в указанном порядке.

# Вывод указанных полей всех процессов начинающихся на «bro» Get-Process bro* | Select-Object Id, ProcessName, WS

Вывод Дополнительной Информации

Кроме базовых полей (Handles, NPM, PM, WS, CPU, SI, ProcessName) выводимых командлетом Get-Process , существуют еще дополнительные. По умолчанию они не выводятся при выполнении командлета, так как вывод всех полей в виде таблицы, не может поместиться в окне консоли, даже если данное окно развернуть на весь экран. Но отобразить все поля все же можно.

Для примера, выведем все поля процесса winlogon в виде списка.

# Вывод всех полей процесса «winlogon» в виде списка Get-Process winlogon | Format-List *

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

Дополнительные поля содержат полезную информацию, к примеру:

Составим из этих полей свою версию вывода информации о процессах.

# Вывод указанных полей в виде таблицы Get-Process v*,p*,n* | Format-Table Id, Path, MainWindowT*, Description, Company, ProductVersion

Пользователь Запустивший Процесс

Если вы обратили внимание, то скорее всего заметили, что среди дополнительных полей нет информации о пользователе запустившем конкретный процесс. Вывести данную информацию можно выполнив командлет Get-Process с ключом -IncludeUserName .

# Вывод указанных процессов с информацией о пользователе Get-Process v*,p*,n* -IncludeUserName | Format-Table -AutoSize

Сортировка Вывода

Выполнить сортировку вывода командлета Get-Process можно передав его вывод по конвейеру командлету Sort-Object . К примеру, сортировка по имени процесса, в алфавитном порядке.

# Выполнение сортировки по имени процесса Get-Process | Sort-Object ProcessName

Теперь, отсортируем вывод по полую WS, в порядке убывания. Так мы сможем определить самый прожорливый процесс, он будет первым в списке.

# Выполнение сортировки по используемой оперативной памяти Get-Process | Sort-Object WS -Descending

Вывод Процессов по Условию

Условия, позволяют выбрать из списка всех процессов, те, что удовлетворяют определенным критериям. К примеру выберем из списка процессов, все, объем выделенной памяти для которых больше 50 МБ.

# Вывод процессов объем выделенной памяти для которых больше или равен 50 МБ Get-Process | Where-Object WS -ge 50MB

Вся выборка осуществляется с помощью командлета Where-Object . Если вкратце, данный командлет принимает на вход указанный параметр, и выполняет его сравнение. В данном случае, в качестве параметра выступает поле WS, значение которого должно быть больше или равно 50MB. Данное равенство указывается с помощью параметра -ge (Greater than or equal).

Существуют и другие параметры сравнения: -gt больше, -lt меньше, -eq равно, -ge больше/равно, -le меньше/равно. Подробнее все параметры сравнения, можно посмотреть в справке по командлету Where-Object .

# Вызов онлайн-справки по командлету Where-Object Get-Help Where-Object -online

Вывод Взаимосвязанных Служб

За запущенными процессами, могут скрываться службы. То есть, какой-то из процессов может быть на самом деле запущенной службой. Попробуем вывести такие службы.

# Вывод взаимосвязанных служб с сортировкой по ID процесса Get-WmiObject Win32_Service | Where-Object ProcessId -In (Get-Process svc*).Id | Sort-Object proc* | Format-Table proc*, pathn*, stat*, name*

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

# Вывод взаимосвязанных служб с сортировкой по ID процесса gwmi Win32_Service | ? Proc* -In(ps svc*).Id | sort proc* | ft proc*, pathn*, stat*, name*, des*

Закрытие Процессов

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

Допустим в системе запущено 4 процесса notepad и 1 notepad++.

Закрыть 4 обычных блокнота, можно передав отфильтрованный список командлету Stop-Process .

# Закрыть все процессы «notepad» Get-Process notepad | Stop-Process

Вывод Взаимосвязанных Модулей

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

# Вывод взаимосвязанных модулей процесса «x64dbg» (get-process x64dbg).Modules

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

Итог

В статье было рассмотрено: Как вывести список процессов в PowerShell? Как выполнить сортировку процессов в PowerShell? Как вывести взаимосвязанные службы процессов в PowerShell? Как вывести взаимосвязанные модули процесса в PowerShell? Как отфильтровать список процессов в PowerShell?

Как вывести процессы по заданному условию в PowerShell?

Источник: www.bootdev.ru

Windows PowerShell: установка модуля на компьютер

Операционная система: «Windows 10 Pro».
Программа «Windows PowerShell», версия 5.1.

В разных случаях могут понадобиться разные шаги, универсальной инструкции по установке модуля для программы «Windows PowerShell» на компьютер не существует. Я здесь решил записать шаги по установке, которые понадобились мне.

Так как я буду скачивать модуль из интернета, то, очевидно, потребуется соединение с интернетом.

Шаг 1) Для некоторых действий по установке требуются права администратора. Поэтому первым делом запускаем программу «Windows PowerShell» от имени администратора данного компьютера. Это можно сделать множеством способов. Лично я нажимаю кнопку «Пуск» в левом нижнем углу экрана, набираю фразу «Windows PowerShell» и в списке справа выбираю пункт «Запуск от имени администратора».

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

По умолчанию у меня для всех уровней (по-английски «scopes») не было установлено никакой политики выполнения (по-английски «Undefined»). Что означает, что действующая политика выполнения считается политикой выполнения «Restricted». Я об этом писал в отдельном посте. Эта политика выполнения не разрешает запуск скриптов. Таким образом, для работы устанавливаемого модуля потребуется смена постоянно действующей политики выполнения на политику, разрешающую выполнение скриптов.

Я решил установить политику выполнения «RemoteSigned» для уровня «LocalMachine». Политика выполнения «RemoteSigned» разрешает запуск «местных» скриптов без ограничений, а для запуска скриптов, полученных из интернета, требует цифровую подпись от доверенного издателя. Я буду скачивать модуль из репозитория в интернете, принадлежащего компании «Microsoft». У этого модуля есть нужная цифровая подпись от доверенного издателя — компании «Microsoft».

Установление новой политики выполнения на уровне (по-английски «scope») «LocalMachine» означает запись названия этой политики в реестр операционной системы. Это позволяет установить новую политику выполнения только один раз, а не каждый раз при запуске новой сессии программы «Windows PowerShell». Уровень «LocalMachine» действует на всех пользователей операционной системы на данном компьютере. Изменение политики выполнения на уровне «LocalMachine» — действие, которое требует прав администратора (это одно из действий, ради которого был выполнен шаг 1, см. выше).

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

Для соответствующей смены политики выполнения на указанном уровне вводим следующую команду:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine

У меня программа в ответ на эту команду вывела предупреждающее сообщение с просьбой подтверждения. Отвечаем «Да» (по-английски «Y») на этот вопрос. После этого можно еще проверить, правильно ли установилась политика выполнения, с помощью следующей команды:

Get-ExecutionPolicy -list

У меня это выглядит так:

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

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

Get-PSRepository

У меня программа «Windows PowerShell» подключена к единственному репозиторию (этот репозиторий зарегистрирован в программе по умолчанию):
https://www.powershellgallery.com/api/v2

Этот репозиторий принадлежит компании «Microsoft» и называется «PowerShell Gallery».

Репозиторий «PowerShell Gallery» является репозиторием, заточенным под работу с пакетами формата менеджера пакетов «NuGet». Со стороны программы «Windows PowerShell» для скачивания пакетов из различных репозиториев существует модуль «PowerShellGet». Таким образом, цепочка взаимодействия при скачивании пакетов выглядит так: программа «Windows PowerShell» – модуль «PowerShellGet» – модуль-провайдер (поставщик) «NuGet» – репозиторий «PowerShell Gallery».

Вместе с программой «Windows PowerShell» у меня уже по умолчанию (в рамках первоначальной установки операционной системы) был установлен модуль «PowerShellGet» версии «1.0.0.1». Это довольно старая на сегодня версия. Например, она не поддерживает установку предрелизных версий модулей. Поэтому изначально модуль «PowerShellGet» тоже требует обновления.

Модуль-провайдер «NuGet» у меня установлен не был. Но это не страшно: модуль «PowerShellGet» при необходимости сам устанавливает модуль-провайдер «NuGet», если ответить утвердительно на соответствующий вопрос программы. Программа «Windows PowerShell» будет спрашивать, устанавливать ли модуль-провайдер «NuGet» и на этот вопрос следует ответить утвердительно, так как для работы с репозиторием «PowerShell Gallery» без этого модуля-провайдера не обойтись.

Итак, для скачивания модуля на компьютер из репозитория в интернете существует следующая команда:

Install-Module

Сначала я просто запустил такую команду на примере модуля «PSReadLine»:
Install-Module PSReadLine

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

C:Program FilesPackageManagementProviderAssembliesnuget2.8.5.208

(Тут важно не путаться: существует программа «NuGet» (менеджер пакетов) в разных видах: с графическим интерфейсом и в виде инструмента для работы в командной строке для разных сред разработки. Здесь же речь идет про двоичный файл (библиотеку), которую я называю «модуль-провайдер» (еще слово «provider» переводят в данном случае как «поставщик»). Модуль-провайдер предоставляет некоторые функции менеджера пакетов «NuGet» для работы в программе «Windows PowerShell». Так что установка модуля-провайдера «NuGet» не означает установки менеджера пакетов «NuGet» на компьютер.)

Однако, в результате команды Install-Module PSReadLine скачивания модуля «PSReadLine» не произошло, программа сообщила, что такой модуль уже установлен (программа здесь не проверила, что я пытаюсь установить другую версию модуля «PSReadLine»). Для установки еще одной (более новой) версии модуля «PSReadLine» я запустил эту же команду с дополнительным параметром:

Install-Module PSReadLine -Force

В этот раз установка модуля более новой версии прошла успешно. Установилась версия 2.1.0 модуля «PSReadLine» параллельно с моей первоначальной версией этого модуля 2.0.0.

Шаг 4) На этом можно было бы успокоиться, но я заметил, что скачалась не самая свежая версия модуля «PSReadLine» (на сегодня это «2.2.0-beta4»), а самая свежая, если не учитывать предрелизных версий (альфа, бета, релиз-кандидат и тому подобных).

Это произошло потому, что в шаге 3 я пользовался устаревшей версией «1.0.0.1» модуля «PowerShellGet» (явно я его не использовал, но вызывал команду Install-Module , которая принадлежит указанному модулю). Эта версия установилась в рамках установки моей операционной системы.

Обновим модуль «PowerShellGet» с помощью следующей команды:

Install-Module PowerShellGet -Force

В результате у меня на компьютере к ранее имевшейся версии «1.0.0.1» модуля «PowerShellGet» добавилась более свежая версия «2.2.5».

При этом автоматически обновился и модуль «PackageManagement» (модули «PackageManagement» и «PowerShellGet» связаны между собой). К старой версии «1.0.0.1» этого модуля добавилась версия «1.4.7» в следующей папке:

C:Program FilesWindowsPowerShellModulesPackageManagement1.4.7

В этой же папке внутри содержится и более новая версия «3.0.0.1» модуля-провайдера «NuGet»:
C:Program FilesWindowsPowerShellModulesPackageManagement1.4.7 fullclrMicrosoft.PackageManagement.NuGetProvider.dll

Теперь мы можем получить действительно самую свежую версию модуля «PSReadLine» (на сегодня это «2.2.0-beta4») с помощью следующей команды с дополнительным параметром, который стал доступен после обновления модуля «PowerShellGet»:

Install-Module PowerShellGet -Force -AllowPrerelease

В результате этой команды к уже имевшимся ранее версиям «2.0.0» и «2.1.0» модуля «PSReadLine» у меня на компьютере добавилась еще версия «2.2.0» (точнее, «2.2.0-beta4»).

Напоследок хочу отметить, что поскольку многие (если не все) из перечисленных модулей устанавливаются в системные папки (каталоги, владельцем которых записана операционная система), то для этого программе «Windows PowerShell» требуются права администратора. Именно поэтому шаг 1 необходим для установки перечисленных модулей.

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

Источник: ilyachalov.livejournal.com

Windows PowerShell

Windows PowerShell — это оболочка командной строки, разработанная компанией Microsoft для облегчения управления процессами и операционными системами, а также автоматизации задач.

О программе

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

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

Источник: freesoft.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru