vboxmanage guestcontrol изменить пароль

У меня есть сценарий, который я могу запустить на виртуальной машине.

Однако я хотел бы передать аргумент сценарию. Обычно я запускаю сценарий как ">>test.bat user1"

Аргумент - "user1". Может ли кто-нибудь помочь изменить приведенную ниже команду, чтобы передать аргумент?

VBoxManage --nologo guestcontrol "sample1" run --exe "C:\Users\sample1\Desktop\test.bat" --username sample1 --password sample2 --wait-stdout

Я тоже пробовал бегать

VBoxManage --nologo guestcontrol "sample1" run --exe "C:\Users\sample1\Desktop\test.bat user1" --username sample1 --password sample2 --wait-stdout

Но это было неправильно, у меня были результаты для приведенной выше команды:

C:\Program Files\Oracle\VirtualBox>VBoxManage --nologo guestcontrol "sample3" run --exe "C:\Users\sample1\Desktop\test.bat user1"  --username sample1 --password sample2 --wait-stdout
VBoxManage.exe: error: No such file or directory on guest
VBoxManage.exe: error: Details: code VBOX_E_IPRT_ERROR (0x80bb0005), component GuestProcessWrap, interface IGuestProcess, callee IUnknown
VBoxManage.exe: error: Context: "WaitForArray(ComSafeArrayAsInParam(aWaitStartFlags), gctlRunGetRemainingTime(msStart, cMsTimeout), &waitResult)" at line 1485 of file VBoxManageGuestCtrl.cpp

Также пробовал

VBoxManage --nologo guestcontrol "sample1" run --exe "C:\Users\sample1\Desktop\test.bat" --username sample1 --password sample2 --wait-stdout --user1

 

Usage:

 

VBoxManage guestcontrol     <uuid|vmname> [--verbose|-v] [--quiet|-q]
                              [--username <name>] [--domain <domain>]
                              [--passwordfile <file> | --password <password>]
                              run [common-options]
                              [--exe <path to executable>] [--timeout <msec>]
                              [-E|--putenv <NAME>[=<VALUE>]] [--unquoted-args]
                              [--ignore-operhaned-processes] [--profile]
                              [--no-wait-stdout|--wait-stdout]
                              [--no-wait-stderr|--wait-stderr]
                              [--dos2unix] [--unix2dos]
                              -- <program/arg0> [argument1] ... [argumentN]]

 

VBoxManage.exe: error: Unknown option: --user1

2 ответа

Из документа VBoxManage:

VBoxManage guestcontrol <uuid|vmname> run [common-options] --exe <path to executable> 
[--timeout <msec>] [-E|--putenv <NAME>[=<VALUE>]] [--unquoted-args]
[--ignore-operhaned-processes] [--profile] [--no-wait-stdout|--wait-stdout]
[--no-wait-stderr|--wait-stderr] [--dos2unix] [--unix2dos] -- <program/arg0> [argument1] ... [argumentN]]

Пожалуйста попробуйте

VBoxManage --nologo guestcontrol "sample1" run --exe "C:\Users\sample1\Desktop\test.bat" --username sample1 --password sample2 --wait-stdout -- user1

Мне не хватало -- в моем предыдущем комментарии

Насколько я понимаю, этот вопрос не имеет ничего общего с vboxmanage, а просто вопрос о том, как передать ссылку как параметр командной строки в пакетном файле.

В пакетном файле параметры командной строки обозначаются как%1, %2, %3 и т. Д. В том порядке, в котором они представлены в командной строке. Таким образом:

Вот простой однострочный файл bat с именем doit.bat

echo %1 %2 %3

А вот его исполнение:

C:\>doit firstparm secondparm thirdparm

C:\>echo firstparm secondparm thirdparm
firstparm secondparm thirdparm
Другие вопросы по тегам