Dá-lhe rapaziada,
Seguinte.
To executando as seguintes linhas:
Class.forName("oracle.jdbc.driver.OracleDriver");
Runtime rt = java.lang.Runtime.getRuntime();
String resultado = rt.exec("/path "+var+" -c exit", resto).toString();
Como resposta, eu obtenho várias linhas de texto:
**** Quando funciona, o resultado é o seguinte ****
INFO: Debug class all level = 2 (pid 17835 from pid 17835)
added interface ip=10.9.1.28 bcast=10.9.255.255 nmask=255.255.0.0
added interface ip=10.9.190.12 bcast=10.9.255.255 nmask=255.255.0.0
added interface ip=10.9.1.10 bcast=10.9.255.255 nmask=255.255.0.0
Domain=[REDETR] OS=[Unix] Server=[Samba 2.0.3]
e
**** Já quando não funciona, o resultado é o seguinte ****
INFO: Debug class all level = 2 (pid 17834 from pid 17834)
added interface ip=10.9.1.28 bcast=10.9.255.255 nmask=255.255.0.0
added interface ip=10.9.190.12 bcast=10.9.255.255 nmask=255.255.0.0
added interface ip=10.9.1.10 bcast=10.9.255.255 nmask=255.255.0.0
session setup falied: ERRSRV - ERRbadpw (Bad password - name/password pair in a Tree Connect or Session Setup are invalid.)
Essas linhas aparecem somente quando executo o comando no shell, já quando executo via rt.exec("…"), eu só recebo a primeira linha, quando na real o que me interessa é a quarta!
Alguém tem alguma sugestão de o que eu faço pra receber a quarta linha, ou pelo menos, todas as linhas ao invés de só a primeira?
[]s
Renato Back
Olá,
Dando uma olhada rápida, acho q o erro está em atribuir o resultado do método exec a uma String.
tenta assim:
Class.forName("oracle.jdbc.driver.OracleDriver");
Runtime rt = java.lang.Runtime.getRuntime();
Process proces = rt.exec("/path "+var+" -c exit", resto).toString();
InputStream is = proces.getInputstream();
daqui pra frente é só usar o pacote java.io para converter o valor da Stram em uma String.