Salve,
vi descrivo il mio problema.
Se lancio il seguente comando da teminale: ssh localhost "VBoxManage list vms"
ottengo a video la lista di tutte le macchine virtuali installate.
Se invece creo un programmino in Java per eseguire tale comando:
La stringa out risulta vuota e sicuramente non è colpa del codice perchè se sostituiscocodice:Runtime run=Runtime.getRuntime(); String command="ssh localhost \"VBoxManage list vms\""; Process proc=run.exec(command); InputStreamReader isr=new InputStreamReader(proc.getInputStream()); BufferedReader br=new BufferedReader(isr); String line=""; int cont=0; while(cont<linee && (line=br.readLine())!=null){ cont++; out=out+line+"\n"; }
mi restituisce la stringa del nome utente.codice:String command="ssh localhost \"whoami\"";
Allora ho provato a passare all'interno dell'InputStreamReader llo stream d'errore getErrorStream() relativo al processo in esecuzione:
e il println della stringa out mi da:codice:InputStreamReader isr=new InputStreamReader(proc.getErrorStream());
bash: VBoxManage list vms: comando non trovato
il che mi sembra strano poichè da terminale non dava alcun errore
P.S: Ho provato anche inserendo il path completo di VBoxManage:
ssh localhost "/usr/bin/VBoxManage list vms"
su terminale va benissimo, con Java no.

Rispondi quotando