Как изменить каталог установки программы powershell
Перейти к содержимому

Как изменить каталог установки программы powershell

  • автор:

Powershell что это такое и как пользоваться

Powershell — это улучшенная и расширенная версия командной строки Windows. Она позволяет выполнять различные команды ОС, а также наборы команд, оформленные в виде файлов, так называемые скрипты или сценарии. С ее помощью можно реализовывать простейшие конструкции циклов и ветвлений (for и if), перенаправлять ввод-вывод в файлы, считывать параметры из файлов, с клавиатуры, использовать переменные, настраивать локальный и другие компьютеры в сети, менять параметры реестра и т.д.

Чтобы открыть powershell необходимо выбрать соответствующую группу в меню “Пуск”.

Powershell

Здесь есть сам powershell под каждую разрядность и оболочка для отладки сценариев Powershell ISE (также две версии). Для создания сценариев удобно использовать ISE. Оболочка в принципе похоже на большинство других средств разработки и выглядит так:

Powershell

Вверху после меню и кнопок находится область сценариев — если ее нет, то включается в меню “Вид”, под ней сама командная строка powershell, являющаяся также и областью вывода ошибок, а справа конструктор выражений.

Powershell использует команды ОС Linux и так называемые апплеты — это команды, позволяющие выполнять какие-то действия в ОС Windows.

Для того чтобы выполнить команду ОС достаточно просто ввести ее в окне powershell. Например:

  • pwd — вывод текущего каталога
  • ls — вывод списка файлов в текущем каталоге
  • Copy-Item — скопировать файл или каталог
  • Remove-Item — удалить файл или каталог

У большинства команд и апплетов есть аргументы, например:

cat c:\temp\a1.txt — вывести содержимое файла c:\temp\a1.txt ls с:\windows — вывести список файлов в каталоге \home.

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

Remove-item -Recursive “c:\temp” — удаляет каталог c:\temp вместе с подкаталогами.

Параметры и ключи каждой команды можно посмотреть используя справочную систему get-help, то есть чтобы посмотреть аргументы и ключи команды cp достаточно набрать get-help move-item и т.д.

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

Последнее обновление: 29.01.2019

Средняя оценка: 5,0 , всего оценок: 1 Спасибо за Вашу оценку! К сожалению, проголосовать не получилось. Попробуйте позже

Установка приложений с помощью менеджера пакетов PowerShell

date

08.06.2022

user

itpro

directory

PowerShell, Windows 10

comments

комментариев 10

В состав Windows 10 разработчики включили новый PowerShell модуль с именем PackageManagement. Модуль PackageManagement (ранее назывался OneGet) позволяет из консоли PoSh устанавливать, управлять и удалять приложения и программы из некого внешнего (или локального) репозитория, а также управлять списком подключенных репозиториев. Проще говоря, в Windows 10/ Windows Server 2016 появилась возможность устанавливать программы из командной строки по аналогии с известной командой Linux apt-get install.

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

Модуль PackageManagement

Модуль PackageManagement уже встроен в Windows 10, а для его работы требуется PowerShell 5. Поэтому для работы менеджера пакетов в Windows 8.1 нужно сначала установить Windows Management Framework 5.0. Также Microsoft выпустила отдельный модуль для работы менеджера пакетов и на PowerShell версий 3 и 4.

Выведем список доступных командлетов PowerShell в модуле PackageManagement:

Get-Command -Module PackageManagement

В текущей версии модуля (v 1.0.0.1) имеются такие команды:

  • Find-Package — поиск пакета (программы) в доступных репозиториях
  • Get-Package — получить список установленных пакетов
  • Get-PackageProvider — список провайдеров (поставщиков пакетов), доступных на компьютере
  • Get-PackageSource — список доступных источников пакетов
  • Install-Package — установить пакет (программу) на компьютере
  • Register-PackageSource — добавить источник пакетов для провайдера

Командлеты модуля Powershell PackageManagement

Провайдеры пакетов

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

Список провайдеров в модуле PackageManagement

По умолчанию в системе имеются 2 установленных источника пакетов: nuget.org и PSGallery (официальная онлайн галерея скриптов PowerShell от MSFT). Но они предназначены в первую очередь для программистов и системных администраторов.

Примечание. В Nano Server есть специальный еще провайдер NanoServerPackage, о нем в следующей статье.

Чтобы получить доступ к каталогу прикладного ПО, подключим популярный репозитарий ПО – Chocolatey, содержащий на данный момент более 4500 различных программ.

Установим новый провайдер Chocolatey:

Подтвердим установку провайдера, нажав Y.

Установка провайдера chocolatey

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

Set-PackageSource -Name chocolatey -Trusted

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

Get-PackageSource

Name ProviderName IsTrusted Location
—- ———— ——— ———
PSGallery PowerShellGet False https://www.powershellgallery.com/api/v2/
chocolatey Chocolatey True http://chocolatey.org/api/v2/

Установка приложений из репозитория Chocolatey

Рассмотрим теперь, как установить приложение (пакет) из репозитория Chocolatey.

Список доступных для установки приложения можно получить непосредственно на официальном веб сайте Chocolatey (https://chocolatey.org/packages)

Репозиторий приложений Chocolatey

Также можно найти и установить нужное приложение прямо из консоли PowerShell. Например, для просмотра pdf файлов нам понадобилось установить приложение Adobe Acrobat Reader. Т.к. мы не знаем полного названия приложения, для его установки нам нужно получить имя пакета в каталоге. Выполним поиск в репозитории по ключевому слову ‘adobe’:

Find-Package -Name *adobe* -Source Chocolatey

В консоли появится список всех пакетов по данному ключу. Нам нужен пакет adobereader (нужно использовать именно имя пакета из столбца Name).

Запускаем установку пакета Adobe Reader:

Install-Package -Name adobereader -ProviderName Chocolatey

Установка пакета adobereader из репозитория Chocolatey

Вверху окна PowerShell появится ползунок, свидетельствующий о начале загрузки пакета Adobe Reader. Сразу после окончания загрузки, приложение установится в системе.

acrobat- eader dc в windows 10

Еще один пример. Допустим, нам понадобилось иметь на компьютере набор утилит SysInternals. Чтобы не качать его вручную, найдем пакет SysInternals в репозитарии Chocolatey и установим его.

Find-Package -Name Sysinternals | Install-Package

Т.к. пакет не требует установки, он сохраняется на компьютер и хранится в каталоге C:\Chocolatey\lib\. В нашем примере это каталог C:\Chocolatey\lib\sysinternals.2016.11.18\tools

Установка sysinternals из каталога Chocolatey

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

Find-Package -Name firefox, winrar, notepadplusplus, putty, dropbox | Install-Package

Удаление пакета

Удаление приложения на компьютере выполняется также одной командой. К примеру, для удаления Adobe Reader, выполните команду:

Итак, мы рассмотрели новые возможности установки приложений в Windows из командной строки PowerShell. В ближайшем будущем, вероятно, появятся графические надстройки над модулем PackageManagement, позволяющие легко управлять установкой/удалением ПО и простым пользователям без навыков работы с CLI.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Основы Windows PowerShell

Рассказали, о технологии Windows PowerShell и как начать с ней работать.

Изображение записи

Рассказываем про Windows PowerShell — технологию для автоматизации рутинных задач, пришедшую на смену bat-файлам.

Работа с консолью Microsoft Windows

Ранее мы рассматривали командные интерпретаторы COMMAND.CMD и CMD.EXE, обеспечивающие автоматизацию задач в семействе операционных систем Microsoft Windows. Фактически данные интерпретаторы не получали обновлений с начала 2000-х годов и существуют в современных операционных системах для обеспечения совместимости.

Хотя современные операционные системы предлагают богатый на функции графический интерфейс, ряд однотипных задач быстрее решается через консоль. Более того, серверные редакции ОС не предоставляют графический интерфейс по умолчанию, поэтому интерпретатор командной строки является неотъемлемой частью практически любой операционной системы.

Помимо отсутствия обновлений, CMD.EXE имеет ограниченный функционал. Он не позволяет писать сложную логику и полностью отказаться от использования графического интерфейса. Корпорация Microsoft пыталась решить эти проблемы с помощью инструмента под названием Microsoft Script Host, который имел интеграцию со скриптовыми языками JScript и VBScript.

Однако Microsoft Script Host имел ряд собственных проблем:

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

Все это побуждало Microsoft сделать командный интерпретатор с нуля.

Новый командный интерпретатор Windows PowerShell

В 2003 году корпорация Microsoft начала разработку нового инструмента — Microsoft Shell (MSH), или Monad. Спустя три года и три бета-версии Monad была официально выпущена под новым названием Windows PowerShell 1.0 на Windows XP и Windows Vista. По ходу развития командная оболочка меняла свои названия на PowerShell Core и PowerShell.

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

Как и любой командный интерпретатор, PowerShell умеет запускать исполняемые файлы и имеет встроенные команды. Однако у PowerShell встроенные команды имеют название «командлет», появившееся от английского cmdlet.

Что такое командлет?

В основе взаимодействия с PowerShell лежат объекты, а не текст, как у CMD.EXE и командных интерпретаторов в *nix-системах. Такой подход меняет взгляд на организацию встроенных команд.

Командлет — это встроенная команда в PowerShell, выполняющая одну задачу и реализованная на .NET. Имя командлета соответствует правилу Глагол-Существительное, которое можно читать как Действие-Объект.

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

# Получить общую справку по PowerShell Get-Help # Получить справку по командлету Get-Content Get-Help Get-Content # Получить справку по командлету Get-Help Get-Help Get-Help 

Если вам кажется, что использовать большие буквы в названии командлетов — это перебор, для вас есть хорошие новости. Все команды в PowerShell являются регистронезависимыми. Иными словами, перечисленные ниже написания эквивалентны:

Get-Help Get-Help get-help get-help GET-HELP GET-HELP GeT-hElP gEt-HeLp 

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

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

Основы программы PowerShell

Перейдем к практике. PowerShell является кроссплатформенным инструментом и может быть запущена на Linux и macOS, но в данной статье будет рассматриваться только «родное» окружение — Windows.

Как запустить?

Программа в меню

Запуск PowerShell можно произвести из меню поиска около кнопки Пуск, набрав powershell.

PowerShell в меню

Аналогично можно запустить PowerShell через диалоговое окно Выполнить…, которое открывается через сочетание клавиш Windows + R.

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

Установка PowerShell

В случае успеха откроется синее окно. Windows PowerShell готов к вашим командам.

Синтаксис

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

Get-Help Get-Command -Online

Данная команда откроет в браузере вкладку с описанием командлета Get-Command в базе знаний Microsoft. Разберем подробнее:

  • Get-Help – команда, в данном случае командлет,
  • Get-Command – первый позиционный аргумент, который передается командлету,
  • -Online – ключ, то есть именованный аргумент.

Обратите внимание, что в CMD.EXE именованные аргументы, то есть ключи, для встроенных команд начинались с символа слэш (/). У командлетов аргументы начинаются со знака минус. Использование знака / в PowerShell недопустимо и будет интерпретировано как ошибка.

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

function Get-Version

Данный код объявит функцию Get-Version, которая обращается к системной переменной (объекту) PSVersionTable и возвращает значение поля PSVersion. Проще говоря, выводит версию PowerShell.

Именование командлетов может быть неочевидным для администраторов с опытом работы с другими командными интерпретаторами. Поэтому рассмотрим основные команды Windows PowerShell.

Основные команды языка Windows PowerShell

В следующей таблице перечислены основные команды PowerShell и их аналоги в *nix-подобных системах и CMD.EXE. В версии PowerShell 7 количество командлетов превышает полторы тысячи!

Командлет (псевдоним) Команда в *nix Команда в CMD.exe Описание
Get-Location (pwd) pwd Выводит путь до текущего каталога
Set-Location (cd) cd cd Меняет текущий каталог
Get-ChildItem (ls) ls dir Выводит содержимое текущего каталога
Get-ChildItem find find Производит поиск файлов по заданным критериям
Copy-Item (cp) cp cp Копирует файл
Remove-Item (rm) rm rm Удаляет файл
New-Item (mkdir) mkdir mkdir Создает каталог
New-Item touch Создает пустой файл
Get-Content (cat) cat Выводит файлы
Get-Content tail Выводит последние 10 строк
Where-Object grep Производит фильтрацию
Create-Volume
Format-Volume
mkfs Форматирует раздел
Test-Connection ping ping.exe Отправляет ICMP-запросы, «пингует»
Get-Help (man) man help Показывает справку

После работы в консоли *nix командлет для популярного действия, смены каталога, выглядит громоздко и непривычно. К счастью, командлеты имеют псевдонимы (алиасы), которые могут не следовать правилу именования командлетов. Список известных псевдонимов можно получить с помощью командлета Get-Alias.

Хотя таблица, представленная выше, значительно облегчит назначение командлетов, не стоит ожидать от командлетов поведения как в *nix-системах. Так, например, в PowerShell командлет Get-Content создан для вывода содержимого одного файла на экран, в то время как на *nix-системах утилита cat изначально использовалась для конкатенации (процесса соединения) нескольких файлов с последующим выводом на экран.

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

Утилита ping

Отдельно хочется отметить командлет Test-Connection, который делает то же самое, что утилита ping, но не имеет такого алиса. Разница между утилитой и командлетом в формате вывода: утилита выводит текст, а командлет возвращает объект, который можно использовать в конвейерах.

Конвейер PowerShell: особенности и параметры

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

Особенность конвейеров PowerShell заключается в том, что конвейер передает результат не целиком, а по одному объекту. Командлет Test-Connection выводит четыре объекта: по одному на каждый ICMP-запрос. Если подключить командлет к конвейеру, то можно увидеть подтверждение этому тезису. Воспользуемся командлетом Select-Object, чтобы выбрать колонку со временем запроса.

Test-Connection selectel.ru | Select-Object ‘Time(ms)’

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

Test-connection

Но как же так? Дело в том, что отображение объекта при выводе на экран не всегда соответствует имени поля в объекте. Чтобы получить полный список полей в объекте, необходимо вызвать командлет Get-Member.

PS C:\Users\sun> Test-connection selectel.ru | Get-Member TypeName: System.Management.ManagementObject#root\cimv2\Win32_PingStatus Name MemberType Definition ---- ---------- ---------- PSComputerName AliasProperty PSComputerName = __SERVER Address Property string Address BufferSize Property uint32 BufferSize NoFragmentation Property bool NoFragmentation PrimaryAddressResolutionStatus Property uint32 PrimaryAddressResolutionStatus ProtocolAddress Property string ProtocolAddress ProtocolAddressResolved Property string ProtocolAddressResolved RecordRoute Property uint32 RecordRoute ReplyInconsistency Property bool ReplyInconsistency ReplySize Property uint32 ReplySize ResolveAddressNames Property bool ResolveAddressNames ResponseTime Property uint32 ResponseTime ResponseTimeToLive Property uint32 ResponseTimeToLive RouteRecord Property string[] RouteRecord RouteRecordResolved Property string[] RouteRecordResolved SourceRoute Property string SourceRoute SourceRouteType Property uint32 SourceRouteType StatusCode Property uint32 StatusCode Timeout Property uint32 Timeout TimeStampRecord Property uint32[] TimeStampRecord TimeStampRecordAddress Property string[] TimeStampRecordAddress TimeStampRecordAddressResolved Property string[] TimeStampRecordAddressResolved TimestampRoute Property uint32 TimestampRoute TimeToLive Property uint32 TimeToLive TypeofService Property uint32 TypeofService __CLASS Property string __CLASS __DERIVATION Property string[] __DERIVATION __DYNASTY Property string __DYNASTY __GENUS Property int __GENUS __NAMESPACE Property string __NAMESPACE __PATH Property string __PATH __PROPERTY_COUNT Property int __PROPERTY_COUNT __RELPATH Property string __RELPATH __SERVER Property string __SERVER __SUPERCLASS Property string __SUPERCLASS ConvertFromDateTime ScriptMethod System.Object ConvertFromDateTime(); ConvertToDateTime ScriptMethod System.Object ConvertToDateTime(); IPV4Address ScriptProperty System.Object IPV4Address  

Можно визуально оценить список и найти поле ResponseTime. Также в начале указан тип данного объекта, Win32_PingStatus, информацию о котором можно поискать в базе знаний Microsoft. В документации не только перечислены поля, но и их назначение. Таким образом, конечный вид конвейера будет таким:

Test-connection selectel.ru | Select-Object ResponseTime

Хотя PowerShell побуждает к интерактивной работе, его основное предназначение — автоматизировать рутинные задачи. Значит, необходимо писать скрипты.

Используйте PowerShell в работе с выделенным сервером

Соберите сервер в конфигураторе под свои задачи. Или выберите из более 100 готовых.

Интегрированная среда разработки

Среда разработки

Если вы запускали PowerShell через поиск, вероятно, вы могли заметить приложение Windows PowerShell ISE.

PowerShell-скрипты — это текстовые файлы с расширением .ps1.

Windows PowerShell ISE — это интегрированная среда сценариев PowerShell, включающая в себя:

  • редактор PowerShell-скриптов с автодополнением,
  • окно для интерактивного выполнения командлетов в скрипте,
  • список доступных командлетов с поиском.

Перечень команд

Справка Test-Connection

Обратите внимание, что модуль ISE предоставляет графический интерфейс для генерации аргументов командлета. Помимо генерации команд, в функции модуля также входит вызов «справочника» по командлетам, аналогичного Get-Help, только в графическом интерфейсе.

После написания своего первого PowerShell-скрипта вы столкнетесь с некоторыми ограничениями. Во-первых, файл с расширением ps1 нельзя запустить «двойным кликом» по файлу. Необходимо открыть контекстное меню с помощью правой клавиши мыши и выбрать Запустить с помощью PowerShell.

Во-вторых, скрипт не запустится со следующей ошибкой:

Невозможно загрузить файл C:\Users\sun\Documents\HelloWorld.ps1, так как выполнение сценариев отключено в этой системе. Для получения дополнительных сведений см. about_Execution_Policies по адресу https:/go.microsoft.com/fwlink/ ?LinkID=135170. + CategoryInfo : Ошибка безопасности: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : UnauthorizedAccess 

По умолчанию запуск PowerShell-скриптов ограничен соответствующей политикой безопасности. Посмотреть текущее значение политики безопасности можно с помощью командлет Get-ExecutionPolicy:

PS C:\Users\sun> Get-ExecutionPolicy Restricted 

Список возможных значений:

  • Restricted — запуск запрещен,
  • AllSigned — разрешен только запуск подписанных доверенным разработчиком скриптов,
  • RemoteSigned — разрешен запуск подписанных и собственных скриптов,
  • Unrestricted — разрешен запуск любых скриптов.

По умолчанию стоит значение Restricted. В идеале необходимо подписывать скрипты, но для собственных нужд можно ограничиться значением RemoteSigned:

Set-ExecutionPolicy RemoteSigned

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

Выполнение задач в фоне

Консоль PowerShell

PowerShell позволяет выполнять задачи в фоновом режиме, эту функциональность обеспечивают командлеты с существительным Job:

  • Start-Job — запустить команду или командлет в фоновом режиме,
  • Get-Job — показать состояние фоновых команд,
  • Wait-Job — дождаться завершения выполнения фоновой команды,
  • Receive-Job — получить результат выполнения команды.

Командлет Start-Job возвращает информацию о запущенном фоновом задании. Идентификатор, обозначенный в поле Id, является уникальным для сессии PowerShell.

Настройка удаленного выполнения

PowerShell позволяет реализовать удаленное выполнение командлетов, скриптов, но только на платформе Windows. Для включения возможности удаленного управления необходимо выполнить командлет Enable-PSRemoting с правами администратора.

Командлет Enter-PSSession запустит удаленную интерактивную сессию, а Invoke-Command выполнит команду на одном или нескольких удаленных компьютерах.

PowerShell – актуальные версии программы

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

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

Вопросы с меткой [powershell]

Windows PowerShell является компонентом операционных систем семейства Microsoft Windows. Представляет из себя командную строку и язык сценариев (аналогичный Bash в nix'ах). Множество компонентов от Microsoft имеют библиотеки-интерфейсы (cmdlets) при помощи которых можно управлять данными компонентами через скрипты или командной строки.

575 вопросов
Конкурсные
Неотвеченные

  • Конкурсные 0
  • Неотвеченные
  • Цитируемые
  • Рейтинг
  • Неотвеченные (мои метки)

Как сделать bat файл, который автоматически отвечает дальше на вопросы

мне нужно выполнять работу одной команды в PowerShell на полном автомате. Я пытался сделать таким путем - но оно не отвечает на первый же вопрос. powershell.exe "iwr "https://raw.

3k показов

Почему не удается найти позиционный параметр, принимающий аргумент?

Подскажите, почему командлет который выполняется на локальной машине Get-TimeZone $hostname При выполнении на удаленном хосте Invoke-Command -ComputerName 192.168.1.10 -Credential Domain\UserName --.

28 показов

Как связать физические и логические диски windows в python

Я хочу получить информацию аналогичную выводу PS скрипта Get-Partition | Select-Object DiskNumber, PartitionNumber, DriveLetter, Offset, Size, Type | ConvertTo-Json. В выводе скрипта поле DiskNumber .

47 показов

Powershell EWS. Получить список писем из определённой папки почтового ящика и скопировать иди переместить в другой ящик

Стоит задача раз в день пересылать полученные за сутки письма из определённой папки почтового ящика (Имя папки не стандартное и создаётся пользователем) и копировать\перемещать в папку другого .

Черный экран на Windows сервере после замены через реестр cmd на powershell

Всем привет! У меня есть виртуальная машина, на ней установлен сервер Exchange. Мне понадобилось изменить, чтобы по умолчанию команды исполнялись в powershell, а не в cmd. Нашел такую команду и .

11 показов

Запуск скрипта после установки windows 10

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

37 показов

Почему не распознает русский текст в XML?

Вот код на PowerShell (5.1): Add-Type -AssemblyName System.Web $fileIn1 = "Bridges.gpx" $XPath = "//gpx:wpt" $ns = @ [.

17 показов

Почему после конвертации файла через PDFCreater в PDF содержимое нечитабельно

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

376 показов

Возможна ли корректная работа команды make в Windows при наличии "./" в Makefile?

Работаю на Windows. Терминал - PowerShell. Столкнулся, думаю, с понятной проблемой наличия разных слешей в путях Windows и Linux. Содержимое Makefile: install: ./gradlew clean install Команда ./.

26 показов

Как на Windows 10-11 продолжать выполнять консольную утилиту PowerShell при отключении по OpenSSH с возможностью подключения обратно?

На мини ПК с Windows 11 и OpenSSH необходимо запустить консольное приложение PowerShell, чтобы по ssh (OpenSSH) можно было подключаться и управлять им, и чтобы оно продолжало работу в фоне, даже после .

19 показов

PowerShell проверка файла на FTP сервере

Всем добрый, подскажите пожалуйста как PowerShell'е подключиться к FTP серверу, проверить наличие файла например: test.txt и при его наличии просто удалить его. Буду максимально благодарен.

770 показов

Запуск приложения на удаленном сервере без дополнительного ПО

Друзья привет. Есть необходимость запустить консольное приложение на удаленном сервере на Windows 10. Из сложностей: не должно быть доп ПО(psexec и тп.). Есть ли возможность сделать это средствами, .

39 показов

Создание потоков в процессе powershell

Всем привет. Подскажите пожалуйста как в powershell создать процесс, а в нем - два потока? Первый поток вызывает утилиту на компе, второй - убивает первый поток спустя 20 секунд после начала работы .

5k показов

Powershell Циклы

Подскажите, пожалуйста, как сделать цикл на powershell для повторения строк N раз? И что бы менялось имя при использовании get-newpass каждый раз на другое, а не одно и тоже. Пример: function get-.

715 показов

Не работает команда "manage.py" в Pycharm. Начало проекта на Django

После нажатия manage.py вылетает эта ошибка. пробовал отключить в повершелл запреты под администратором - не помогает. если вводить просто ./manage.py - нет ошибки, но и ничего не происходит. плюс .

Выдача прав доступа через power shell

Хочу выдать права группе пользователей на определенные папки, в них разорваны наследования. Я выгрузил все пути в этой папке и хочу дать доступ группе на всё что внутри. Код ниже, но не могу понять .

16 показов

Проблема с paramiko в Python

Мне нужно подключаться к серверу по ssh принимать его команды и отправлять ему результат. Код для подключения к серверу: import paramiko import subprocess def ssh_command(ip, port, user, passwd, .

38 показов

Проблема PowerShell на Python

Нужна помощь, не получается работать с powershell на пайтоне. Вот код: import subprocess def execute_powershell_script(script): completed_process = subprocess.run(['powershell', '-command', .

4k показов

Ошибка открытия терминала VS Сode

Помогите запустить терминал. В VS Code не открывается терминал. Дает следующую ошибку. Не удалось запустить команду процесса терминала "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe" .

904 показа

Поиск необходимого файла на компьютерах в сети с использованием Powershell-скрипта

Всем привет! Помогите, пожалуйста, разобраться! Что-то у меня не выходит желаемого результата. Задача достаточно прозрачная. Необходимо найти определенные файлы (а именно *.pst ) на компьютерах в .

1k показов

Создание пользователей Windows server 2019 (Скрипт)

Вот как то так он выглядит на PowerShell: Set-ExecutionPolicy Unrestricted #Разрешение неподписанных скриптов Import-Module ActiveDirectory #Импорт модуля ADDS $username=Read-host "Введите имя .

30 показов

Отправка одного файла в письме Exchange Powershell

Скрипт сейчас отправляет все файлы, находящиеся в папке. Нужно сделать так, чтобы был только один файл в письме, и отправка повторялась, пока не отправятся все файлы из папки. $PSTpaths = "C:\.

30 показов

Как получить название выделенного файла в качестве аргумента в батфайле(командной строке)

Суть в том, чтобы бат файл выполнялся по отношению к выделенным в проводнике windows файлам.
512 показов

Удаление веток реестра по условию через PowerShell

Стоит задача скриптом удалить содержимое ветки реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList Кроме первых четырех веток содержащихся внутри! Подскажите каким .

197 показов

Изменение параметров групповой политики через PowerShell

Суть такова: Вношу изменения в "Default Domain Controllers Policy" Set-GPRegistryValue -Name "Default Domain Controllers Policy" -Key "HKLM\Software\Microsoft\Windows\.

200 показов

Как изменить цвет подсветки для текста в кавычках в PowerShell

Ввожу командлет, агрумент которого содержит строку, например: Set-Location "C:\TEMP" Подсветка текста в кавычках при вводе подсвечивается цветом. Как поменять цвет подсветки?

37 показов

Фильтрация по свойствам

В папке e:\ лежит много подпапок, ещё больше файлов с разными расширениями. Это неполный фрагмент фильтрации для примера, на деле он содержит больше указаний. Есть ли способ сделать запись короче? Get-.

17 показов

Есть таблица с Display Name, как скормить в PowerShell табличку и выявить кто enabled, а кто disabled accounts? Exchange

Всем привет! Вот такая задача. Есть таблица с Display Name, как скормить в PowerShell табличку и выявить кто enabled, а кто disabled accounts? Пробовал так: Import-CSV -path C:\Users\GKozlov\Desktop\.

69 показов

Как переместить файлы по дате в другую папку

Нужен скрипт PowerShell, который проверяет файлы в исходной папке и файлы, у которых дата изменения старше заданной в скрипте, переносит эти файлы в определенную сетевую папку. Сделал такой код, .

723 показа

Powershell. Как корректно получить кириллицу в ответе Invoke-RestMethod?

При запросе к API через Invoke-RestMethod получаю ответ с кракозябрами вместо кириллицы.. Как корректно получить кириллицу в ответе Invoke-RestMethod? charset в headers не помог. Спасибо заранее

66 показов

Поиск и замена строки в названии и содержимом файлов и папок через powershell

Хочу автоматизировать рутинные действия с помощью скрипта на PowerShell. Использую старый работающий скрипт для поиска строк: Get-ChildItem -Path 'D:\git\*' -Recurse | Select-String -Pattern 'String' .

30 показов

Не удается подключиться к серверу Exchange 2016 через PowerShell из CentOS

Необходимо подключиться к серверу Exchange 2016 через PowerShell из CentOS. При подключении из Windows пользовался такой схемой: $Session = New-PSSession -ConfigurationName Microsoft.Exchange -.

20 показов

PowerShell: сделать выборку и отправить результат

file.txt: 1 a good line 2 a line with an exception 3 4 is another line 5 a good line by deleting 6 7 all the other lines 8 9 and etc 10 exlude-list.txt file\separated\with\*exception* file\separated .

17 показов

Копирование БД SQL на сетевую папку с проверкой по дате создания

Смиренно прошу помощи по следующему вопросу, имеется 2 виртуальных SQL-сервера объединенные в кластер(SQL01,SQL02), каждую ночь они делают бэкапы БД , каждый в свою папку. Необходимо сделать скрипт на .

WMI или PowerShell?

Я пишу приложение под Windows (мне нужна кроссплатформенность между win10 и win11) на Python. В приложении отображается информация о системе, процессоре, RAM, дисках, и т.д. Сейчас я использую wmi .

Объекты при работе с VBA и Powershell

Всем привет. В программировании не силен, но представляю классы и объекты на более-менее поверхностном уровне. Класс (в котором описаны свойства и методы) - Объекты (к которым мы можем применить .

27 показов

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

есть папка x в лесу one.local в этой папке разнообразные подпапки и фалы с различными правами безопасности если в лесу two.local создать такую же папку и такие же группы,пользователей. Как .

65 показов

Как добавить аналог "cmd" или "powershell" в систему

Если нажать Win + R и ввести cmd винда сразу открывает консоль. Моя цель сделать аналог такого ввода для другого приложения. Добавление файла в %PATH% не дало результата.

80 показов

Управление программой не используя графическую оболочку

Подскажите. в ос windows реализована возможность управлять функционалом (любой) программы не используя графическую оболочку. Может cmd? powershell? Какие есть решения на эту тему? Может есть .

85 показов

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

Стоит задача получать полные свойства файлов в папке и выводить их в отдельный .txt Из всего что смог найти в интернете это использовать командлет Get-Childitem и выводить все атрибуты объекта с типом .

Манипулирование окнами Проводника с использованием powershell

Как, используя PowerShell, изменить размер открытых окон и их положение в Проводнике?

Проблема в VScode, при начале работы с проектом npx и тд, терминал тормазит и зависает

< "workbench.iconTheme": "vscode-icons", "workbench.colorTheme": "Abyss", "terminal.integrated.shellIntegration.enabled": false, ".

Проблема с командой PECL в Windows: 'pecl' не распознается как команда

Я столкнулся с проблемой при использовании команды PECL в командной строке Windows для установки расширений PHP. При выполнении команды 'pecl install extension_name' получаю сообщение об ошибке 'pecl: .

PowerShell - отправка e-mail

Отправляю e-mail средствами PowerShell Send-MailMessage -SmtpServer $SmtpServer -To $AdressTo -From $AdressFrom -Subject $Subject -Body $Body -Encoding [System.Text.Encoding]::UTF8 У адресата письмо .

196 показов

Проблема с CMake! Не работает ни одна команда, вылезает ошибка "git не распознано как имя командлета. "

Пользуюсь PowerShell из VS версии 2022. Git на комп установлен версии 2.40.0 При вводе команды, к примеру "git init" появляется вот такое сообщение: git : Имя "git" не распознано .

Отправка уведомлений на почту через PowerShell

Есть скрипт который мониторит место на дисках. $a = "testdb"#список серверов Get-WmiObject -Class Win32_logicalDisk -ComputerName $a | Where-Object | ft -Property .

Как правильно конкатенировать массив-переменную из параметров в запуск утилиты вызываемой из powershell?

$aPath="$($Env:PATH);C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\bin\HostX64\x64" [System.Environment]::SetEnvironmentVariable('PATH', $aPath, 'Process'.

174 показа

PowerShell. Скрип который смотрел на последний за 24 часа файл и записывал только размер его [закрыт]

подскажите не могу правильно написать скрипт, как заставить PowerShell что бы среди файлов искал последний созданный и записал размер файла в txt?

Не работает скрипт, который должен преобразовывать изображение используя PowerShell и FFMPEG

Смысл в чем, есть скрипт на PowerShell, он должен находить изображения, преобразовывать с помощью FFMPEG, удалять старые, а потом упаковывать в архив, желательно в .tar, но проблема в том, что он не .

47 показов

Как инициализировать новый Nest.js-проект из-под PowerShell?

Выполнив nest new my-project под PowerShell, сегодня мы получим такую ошибку: nest new project-name ⚡ We will scaffold your app in a few seconds.. ? Which package manager would you ❤️ to use? npm .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *