Запуск пакетного файлу на віддаленій машині (VM) за допомогою PowerShell


0

Швидке запитання, якийсь час шукав, але не може знайти відповіді. Деякий фон: У мене є локальна машина і віддалена машина (Virtual Machine), яку я підключаю через RDP.

У мене є пакетний файл, який я запускаю і починає сеанс RDP за допомогою команд powershell і входить до системи з обліковими даними. Моїм наступним кроком є ​​те, де я стикаюся з проблемами, у мене є інший пакетний файл на віддаленому комп'ютері, який я хочу запустити (також команди Powershell).

Коли я запускаю цей пакетний файл фізично через RDP (або подвійним клацанням, або через командний рядок), все добре.

Коли я ініціюю пакетний файл віддалено запускається пакетний файл, але не так, як я хочу. Здається, він працює у фоновому режимі і насправді не показує, що він робить через сеанс RDP, який я маю. Причина, чому я не хочу, щоб це працювало в беззвучному режимі, тому що у мене є скрипт, який видаляє і повторно встановлює програму. Так як це не MSI, я повинен мати кілька "Send Keys" в моєму коді.

Так що в кінці моє питання це, я можу запустити пакетний файл віддалено, що буде діяти, як ніби я двічі натиснув на пакетний файл на віддаленій машині ??? Я вважаю, що є варіант psexec, але я б вважав за краще не використовувати більше програм, ніж потрібно.


ОК здається, що це обмеження powershell, а не пакетного файлу їм працює. Файли ps1 дозволяють створювати неінтерактивні сесії. Хто-небудь має обхідний шлях?
kal

Вам вдалося це вирішити ще? Я тільки стикався з тим же питанням і намагався знайти виправлення. Мій пакетний файл викликає навантаження скриптів python і не працює, якщо я викликати його віддалено, але він зробив правильно, якщо я RDP вручну і двічі клацніть пакетний файл.
Will Webb

Відповіді:


0

Ви пробували Enter-PSSession?

$s = New-PSSession -ComputerName Server01 -Credential Domain01\User01 
# Enter the session yourself
Enter-PSSession -Session $s

або

Invoke-Command -Session $s -ScriptBlock {
    [SCRIPT GOES HERE]
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.