Pois é, minha luta c a execucao de comandos e o Process continua.
O código é o seguinte:
try
{
Process p = Runtime.getRuntime().exec( "rm -f teste" );
}
catch( IOException io)
{
io.printStackTrace();
}
Eu to precisando remover, por exemplo, um arquivo que esteja no diretorio de programa. Tudo compila e roda normalmente mas so que a PESTE do arquivo continua lá.
Apesar da sugestão do Steil ser a melhor [Java não tinha alguma coisa sobre protabilidade ], o fato de executar um programa não significa que o programa fez o que vc quis. provavelmente o rm tá retornando uma mensagem de erro.
Faça o seguinte: leia a saída do seu rm com o InputStream, deve ver algo neste sentido. Outra coisa: para saber onde está sendo executado, mande um exec(“pwd”) e leia a saída [deve ter um padrão nisso, olhe na API, mas essa é a única coisa que consegui pensar!!].
[]s
aborges
“Rafael Steil”:
new File("teste").delete();
Rafael
C eu nao me engano, o File(“teste”) nao busca o arquivo no root do programa …
Rafael_Steil
Basta voce passar o path. Mesm os comandos shell vai ser relativos ao diretorio de binarios da tua aplicacao.
Rafael
J
JBoy_
O exemplo que eu tinha dado foi infeliz eu sei, sobre deletar um arquivo, eu so quis ilustrar de que maneira deveria proceder. Mas a minha aplicacao tem que chamar outra aplicacao pra executar tais comandos DESTE outro aplicativo.
Felizmente eu consegui. O pcalcado me alertou pra achar o erro que deveria estar retornando e era pq o arquivo era protegido.