L'exécution de cmd.exe les commandes à partir de Java
Je suis en train de lire un fichier de l'utilisateur, dans lequel chaque ligne est un cmd.exe
de commande, et de l'exécuter (c'est ok pour supposer que les commandes sont légales), mais lorsque je lance une commande comme echo hi
, je reçois runtime erreur d'exception:
Exception in thread "main" java.io.IOException: Impossible d'exécuter le programme "echo": CreateProcess d'erreur=2, Le système ne peut pas trouver le fichier spécifié
Je suis en train de lancer les commandes comme ceci:
Runtime.getRuntime().exec(command);
où command = "echo hi"
. Cela fonctionne pour des commandes comme regedit
cependant, il semble donc que l'exécution j'obtiens, c'est comme le "run" de la fenêtre et pas de cmd. Est-il un moyen pour exécuter ces commandes?
Vous devez vous connecter pour publier un commentaire.
C'est parce que
echo
n'est pas un exécutable externe de commande (c'est à dire, il n'y a pas deecho.exe
fichier sur votre disque dur, à moins que vous l'y avez mis vous-même). C'est une commande interne du shell.Vous trouverez probablement que vous avez besoin pour exécuter quelque chose comme: