PowerShell - Выполнить powershell команду через .bat

Аватара пользователя
plix

PowerShell - Выполнить powershell команду через .bat

Сообщение plix »

Здравствуйте, конкретный синтаксис для этой команды не нашел на форуме, помогите плиз.



Нужно 2 bat файла, кликая по одной, будет добавлять к примеру русский, кликая по второй - убирать.

Вот сами команды, которые в powershell работают.



Добавление:



Код:

Код: Выделить всё

$list.Add(″ru-RU″)
Set-WinUserLanguageList $List -Force

Удаление:



Код:

Код: Выделить всё

$Index = $List.LanguageTag.IndexOf("ru-RU")
$List.RemoveAt($Index)
Set-WinUserLanguageList $List -Force

Как прописать их в бат правильно, чтобы выполнялись повершеллом ? .
Аватара пользователя
Elven

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение Elven »

а зачем их прописывать в бат если они выполняются пошиком?
Аватара пользователя
DJ Mogarych

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение DJ Mogarych »

Создайте два файла .ps1, а потом два ярлыка с содержимым



Код:

Код: Выделить всё

powershell -f "C:\путь\к\файлу\файл.ps1"

Дальше можно запускать их как обычные программы.
Аватара пользователя
plix

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение plix »

Цитата DJ Mogarych:



Создайте два файла .ps1, а потом два ярлыка с содержимым

Код:

powershell -f "C:\путь\к\файлу\файл.ps1"

Дальше можно запускать их как обычные программы.
PowerShell - Выполнить powershell команду через .bat






Хорошая идея, впринципе достаточно указать .ps1, чтобы файл запускался шеллом, я попробовал, но код так не работает почему то, шелл запускается, но код не обрабатывается, что можно сделать не знаете?
Аватара пользователя
DJ Mogarych

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение DJ Mogarych »

Полагаю, что код неполный. Переменная $list откуда берётся?
Аватара пользователя
plix

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение plix »

Цитата DJ Mogarych:



Полагаю, что код неполный. Переменная $list откуда берётся?
PowerShell - Выполнить powershell команду через .bat




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



Не знаю откуда берется, скопировал с сайта майкрософта неделю назад, щас линк не помню.
Аватара пользователя
DJ Mogarych

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение DJ Mogarych »

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



Код:

Код: Выделить всё

$list = Get-WinUserLanguageList
Аватара пользователя
plix

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение plix »

Цитата DJ Mogarych:



$list = Get-WinUserLanguageList
PowerShell - Выполнить powershell команду через .bat




Попробовал, не вышло, при запуске появляется пустое окно powershell и исчезает
Аватара пользователя
DJ Mogarych

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение DJ Mogarych »

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



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



add.ps1



Код:

Код: Выделить всё

$list = Get-WinUserLanguageList
$list.Add("lt-LT")
Set-WinUserLanguageList $List -Force

remove.ps1



Код:

Код: Выделить всё

$list = Get-WinUserLanguageList
$list = $list |? languagetag -ne "lt"
Set-WinUserLanguageList $list -Force
Аватара пользователя
plix

Re: PowerShell - Выполнить powershell команду через .bat

Сообщение plix »

Цитата DJ Mogarych:



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

У меня работает так (на примере литовского):
PowerShell - Выполнить powershell команду через .bat




А вы можете скинуть файл готовый? Я не разобрался слегка в этом пункте ниже



Создал два .ps1 файла, но не понял куда прописать эту команду




Цитата DJ Mogarych:



powershell -f "C:\путь\к\файлу\файл.ps1"
PowerShell - Выполнить powershell команду через .bat
Ответить

Вернуться в «Скриптовые языки администрирования Windows»