Maison  >  Article  >  Java  >  Comment puis-je exécuter des commandes système en Java ?

Comment puis-je exécuter des commandes système en Java ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-02 17:57:02223parcourir

How Can I Execute System Commands in Java?

Exécuter des commandes système en Java

Cet article traite de l'exécution de commandes système en Java à l'aide de la méthode Runtime.exec(). La méthode vous permet de lancer un processus distinct et d'interagir avec ses flux d'entrée, de sortie et d'erreur standard.

Pour démontrer son utilisation, considérons le code suivant :

<code class="java">public class ImprovedCommandExecution {

    public static void main(String[] args) {
        try {
            Runtime r = Runtime.getRuntime();
            Process p = r.exec("uname -a");
            p.waitFor();
            BufferedReader b = new BufferedReader(new InputStreamReader(p.getInputStream()));

            StringBuilder output = new StringBuilder();
            String line;
            while ((line = b.readLine()) != null) {
                output.append(line).append("\n");
            }

            b.close();

            System.out.println(output);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}</code>

Dans cet exemple , nous :

  1. Obtenons une référence à l'objet Runtime, qui nous permet d'exécuter des commandes système.
  2. Utilisez exec() pour démarrer un processus qui exécute le "uname -a" commande.
  3. Attendez que le processus termine en utilisant waitFor().
  4. Obtenez le flux d'entrée du processus et utilisez un BufferedReader pour lire sa sortie.
  5. Ajoutez chaque ligne de sortie. à un StringBuilder et imprimez la sortie finale.

Ce code stocke la sortie de la commande système dans une chaîne, ce qui la rend facile à utiliser dans votre programme Java.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn