Estou trabalhando em alguma codificação e tenho uma ideia que deve funcionar, mas não tenho idéia de como fazê-la funcionar. Estou usando o Wolfram Mathematica na minha máquina host do Windows para executar algum código, mas tenho que exportar um arquivo para um programa baseado em Linux que eu executo em uma VM do Ubuntu Virtualbox. A partir de agora, quando o arquivo é exportado, tenho que passar por cima e clicar nele para executá-lo.
Embora não seja muito trabalhoso, gostaria de automatizá-lo para que o Mathematica possa chamar meu outro programa e não precisar clicar em nada. Esforcei-me ao máximo para procurar ajuda on-line, mas, honestamente, isso está acima da minha cabeça (sou um engenheiro civil, que não conhece muito os computadores).
Aqui está o que eu tenho até agora:
C:\Program Files\Oracle\VirtualBox\VBoxManage guestcontrol "Ubuntu" execute --username (myname) --password (mypassword) --verbose --wait-exit --wait-stdout --image "/home/(myname)/Desktop/oof2-2.1.11/oof2"
Ele me diz VERR_ACCESS_DENIED
e fecha a sessão do convidado.
Quando executo o meu programa no Ubuntu, tudo o que preciso fazer é digitar oof2
a janela do terminal e a inicialização, mas como faço para fazê-lo através da linha de comando? Eu li o manual de controle de convidados do VirtualBox e não vi nada que eu pudesse entender que se aplica diretamente. Qualquer ajuda é apreciada.
Como observação final, posso executar os exemplos fornecidos no manual de controle de convidados e eles funcionam bem.
/home/(myname)/Desktop/oof2-2.1.11/oof2
?which oof2
oof2 --help
ouoof2 -h
veja se existe uma opção para transmitir um script. Mas se você estiver tentando iniciar um aplicativo GUI, poderá ter dificuldades porque o VirtualBox está iniciando uma nova sessão para o usuário que não estaria associada à área de trabalho atual.Respostas:
Aqui está a ajuda do
vboxmanage
comando:Portanto, o comando completo deve ser:
Observe o extra
--
. Tudo depois disso será passado como argumento para o processo.Configurando SSH
ip -4 addr
. Procure seu endereço IP, ele estará ao lado da palavra "inet" na seção "eth0" (provavelmente será 10.0.2.XXX)localhost
como o nome do host e2222
como a porta. Clique em "Abrir"Se isso funcionar e você obtiver um terminal, agora poderá usar este comando para executar seu aplicativo:
fonte