Как я могу запустить процесс на удаленном компьютере с помощью winrs и не ждать его завершения?

Я пишу сценарий для выполнения некоторых операций (копирование файлов, установка драйверов, настройка некоторых приложений) на удаленном компьютере под управлением Windows Server 2016. Мой исходный компьютер также работает под управлением Windows Server 2016. Я в основном использую winrs для выполнения удаленных команд, поскольку удаленное взаимодействие PowerShell не является вариантом (на целевой машине нет PowerShell, и установить его там невозможно).

Мне нужно выполнить (длительный) процесс на удаленном компьютере и продолжить выполнение моего сценария, не дожидаясь его завершения. Этот процесс будет продолжаться еще долго после того, как мой скрипт завершится. По сути, я хочу отделить этот процесс от моего локального компьютера и не открывать окно / соединение во время его работы, потому что я хочу, чтобы процесс пережил выход из строя моего локального компьютера.

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

  • Использовать start с winrs:
    winrs /r:<remote-computer> start "" <process-exe> 
    
  • Поместите командный файл на удаленный компьютер, который сам использует start для запуска процесса.

    Пакетный файл:

    start "" <process-exe>
    

    Локальная команда:

    winrs /r:<remote-computer> <batch-file>
    
  • То же, что и второй, но также с запуском в локальной команде.

Во всех этих случаях команда winrs блокируется, и я должен остановить ее с помощью Ctrl-C, что также завершает удаленный процесс.

Есть ли способ добиться этого?

0 ответов

Другие вопросы по тегам