Olá,
gostaria de saber se é possível chamar um script dentro do programa java e, além disso, conseguir capturar a string que este script retorna. :eek:
Java + Shell script
A
3 Respostas
F
Usa a classe runtime para executar.
Runtime.getRuntime().exec("/tmp/run.sh");
Isso ira te retornar um
java.lang.Process
Onde tu pode pegar as tres streams que tu precisa, output, input e error.
A
Valeu!!! Testei agora no windows e funcionou ao chamar um .bat, só que ao chamar um comando, como um “dir”, dá um erro java.io.IOException: CreateProcess: dir error=2 na primeira linha. Este método não consegue capturar o resultado de um comando? Segue abaixo o código:
try {
Process child = Runtime.getRuntime().exec("dir");
InputStream in = child.getInputStream();
int c;
while ((c = in.read()) != -1) {
System.out.print((char)c);
}
in.close();
}
catch (IOException e) {
e.printStackTrace();
}
F
Pois eh… acho q ele nao consegue executar um comando como o dir, pois o dir nao eh um programa… mas nao tenho certeza… talvez alguem saiba ai…
Mas para fazer um ‘dir’ tu pode usar
File.list()
Da uma olhada em
http://java.sun.com/j2se/1.5.0/docs/api/java/io/File.html#list()
Criado 25 de outubro de 2006
Ultima resposta 26 de out. de 2006
Respostas 3
Participantes 2
Alura Git Flow: entenda o que é, como e quando utilizar Entenda o que é Git Flow, como funciona seu fluxo com branches como Master, Develop, Feature, Release e Hotfix, além de vantagens e desvantagens.
Casa do Codigo Ontologias e Web Semantica: Do conceito a aplicacao Por Ivam Galvao Filho — Casa do Codigo