Захват выходных данных .bat-скрипта в VMWare Fusion 'runProgramInGuest'

Захват выходных данных .bat-скрипта в VMWare Fusion 'runProgramInGuest'

Недавно я начал новую работу, где мы запускаем виртуализированные копии Windows внутри VMWare Fusion (Mac OSX — хост). Среди прочего, у нас есть несколько служебных .batфайлов, которые запускаются регулярно. Я хотел бы иметь возможность запускать эти команды из моей хостовой среды.

vmrunотлично подходит для этого, и я придумал что-то вроде следующего:

vmrun -T ws -gu <user> -gp <password> runProgramInGuest <.vmx file> c:\/batch\/hello.bat

Это выполняет команду,но он делает это молча. В этом случае мой hello.batсодержит классический

echo "hello, world!"

Вопрос: есть ли способ захватить то, что отправляется на стандартный вывод в консоли Windows, и отобразить это на моем хосте с помощью этих команд

решение1

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

Чтобы усложнить задачу, вы можете настроить некое подобие TCP-соединения клиент/сервер между гостем и хостом (возможно, просто подключить его к SSH), но тогда вам придется все это настраивать заранее.

Связанный контент