abriu o cmd.exe … e executou o “cd …” dentro dele…
Stringcomando="cmd.exe /c start cd ..";Runtime.getRuntime().exec(comando);
no caso ele abriu um prompt no diretorio D:\workspace\
jah q o “basedir” dele seria a pasta do meu projeto
Bruck
Nesse caso não da pra testar o que eu disse pois vc so colocou um comando, eu quero executar mais de um no cmd, tenta executar
String comando = "cmd.exe /c start cd ..&&dir C:";
Runtime.getRuntime().exec(comando);
alucardeck
vc disse q esse exato comando em prompt funciona?
“cmd.exe /c start cd … && dir C:”
sim, funciona…
e no Java tambem
oq vc poem no exec() do Runtime é exatamente oq ele iria “digitar” no prompt pra executar…
entao nao creio q existe diferença…
se funcionar o comando no prompt, funciona no Java tambem…
o && no comando… faz com que seja executado um “segundo” comando… q entao iria ser no proprio prompt do java… (assim como acontece no DOS)
me mostra oq vc esta executando em DOS q esta funcionando … pois nao creio q tem segredo fazer funcionar no Runtime do Java
Bruck
Cara, eu naum quis dizer exatamente o comando “cmd.exe /c start cd … && dir C:”, mas sim que se vc abrir o cmd manualmente e tentar digitar algum comando na forma “comando1&&comando2” e se estes estiverem com a sintaxe correta, serão executados com sucesso, agora se tento executar pelo java abrindo o cmd e passando esse comando em seguida com o Runtime num da certo, ele não reconhece o segundo comando.
alucardeck
Cara…
sera pq o comando CMD.exe soh aceita 1 comando “extra” como parametro ?
…
tudo q faço com prompt roda perfeitamente aqui… nao entendo oq vc esta vendo de errado…
executar 2 comandos no “novo” CMD.exe q vai abrir? nao creio q seja possivel pois vc soh pode passar 1 comando !
ou vc cria um arquivo .bat (q ele sim vai executar mais de 1 comando) q vai ser executado nesse novo CMD… ou eu creio q não da (pelo menos nao conheço nada possivel)
Bruck
Eu estou querendo passar dois comandos para o cmd, só isso.
entao o argumento do cmd.exe seria o arquivo…
e ele executaria 2 ou mais comandos…
Bruck
E como eu faço o .bat?
E segundo o site q vc me passou é possivel sim passar mais de um comando separando-os com &&, e como eu disse, manualmente funciona, só não funciona chamando pelo Runtime.
alucardeck
Bruck:
E como eu faço o .bat?
E segundo o site q vc me passou é possivel sim passar mais de um comando separando-os com &&, e como eu disse, manualmente funciona, só não funciona chamando pelo Runtime.
mas qdo vc separa o comando por &&… vc nao executa o comando dentro do novo CMD… e sim do antigo…
exemplo
cmd.exe /c start cd … && dir
ele vai usar o CD … dentro do CMD novo…
e o dir no prompt antigo…
e NÃO ambos dentro do CMD novo…
Bruck
Cara, nesse codigo só tem um cmd.
Bruck
Fiz um .bat aq com os comandos e funcionou
comandos.bat:
@echooffcomando1comando2
Pra quem tiver o msm problema, é só criar um txt com codigo no formato acima, salvar e depois mudar a extensão pra .bat e utiizar na hora de chamar o cmd p.ex Runtime.getRuntime().exec(“cmd.exe /c start comandos.bat”);:
alucardeck
e ainda assim vc nao entendeu oq eu kiz dizer com o CMD novo e o antigo… ¬¬
de nada. :evil:
Bruck
Desculpe não ter agradecido, vlws ae! :?
Explica ae entaum essa parada de cmd novo e antigo