Executar Comando DOS

3 respostas
W

Estou criando um pasta no windows com o comando mkdir usando o metodo Runtime, estou recuperando alguns dados de um arquivo de propriedades.

Runtime.getRuntime().exec("cmd /c mkdir \"\" + proprieties.getProperty("destino") + data_atual + "\"");
Runtime.getRuntime().exec("cmd /c copy \""+ proprieties.getProperty("origem") + data_atual + "\*.*\" " + "\"\" + proprieties.getProperty("destino") + data_atual + "\"");

Ele esta criando a pasta normalmente, so que nao copia os dados de um pasta para outra, mas se eu executar novamente e copia? se alguem passou por esse problema ou tem uma ideia do que pode ser, fino aguardando ajuda!

ats,
Wanderson Carvalho
Analista de Redes

3 Respostas

pmlm

Experimenta esperar que os comandos acabem de executar.

Process p = Runtime.getRuntime().exec("cmd /c mkdir \"\" + proprieties.getProperty("destino") + data_atual + "\"");  
p.waitFor();
p = Runtime.getRuntime().exec("cmd /c copy \""+ proprieties.getProperty("origem") + data_atual + "\*.*\" " + "\"\" + proprieties.getProperty("destino") + data_atual + "\""); 
p.waitFor();
T

Não se esqueça também que o comando “copy” usualmente requer que você fique teclando “y” ou “s” a cada vez que ele acha arquivos que devem ser sobreescritos. Em vez disso, use o comando xcopy, e passe o parâmetro “/y” para ele copiar “sem dó”, “/q” para ele não ficar mostrando o que está fazendo (acho que isso pode estar dando problemas no seu caso), e “/r” para forçar a escrever em arquivos somente de leitura, caso já existirem.

O plural de “property” é “properties”, não “proprieties”. Coisas da língua inglesa…

W

Vlw galera funfo legal, rsrs sim thingol vou adicionar esse parametro vlw!

ats,
Wanderson Carvalho
Analista de Redes

Criado 24 de abril de 2009
Ultima resposta 24 de abr. de 2009
Respostas 3
Participantes 3