Heim > Java > javaLernprogramm > Wie kann ich Piping mit Javas Runtime.exec() zuverlässig nutzen?

Wie kann ich Piping mit Javas Runtime.exec() zuverlässig nutzen?

DDD
Freigeben: 2024-12-15 22:25:15
Original
630 Leute haben es durchsucht

How Can I Reliably Use Piping with Java's Runtime.exec()?

Piping mit Runtime.exec()

In Java kann die Verwendung von Piping-Operationen mit Runtime.exec() aufgrund von Cross- Plattforminkonsistenzen im Pipe-Verhalten. Es gibt jedoch mehrere Methoden, um dieses Problem zu beheben.

Skriptausführung

Ein Ansatz besteht darin, ein Skript zu erstellen, das die gewünschten Pipe-Operationen kapselt, und das Skript stattdessen auszuführen einzelne Befehle. Zum Beispiel:

#!/bin/sh
ls /etc | grep release
Nach dem Login kopieren

Führen Sie dann das Skript mit exec aus:

String[] cmd = {"/bin/sh", "path/to/script.sh"};
Process p = Runtime.getRuntime().exec(cmd);
Nach dem Login kopieren

Shell-Based Pipe

Eine weitere Option ist die Verwendung die Pipe-Funktionalität der Shell direkt wie folgt:

String[] cmd = {
    "/bin/sh",
    "-c",
    "ls /etc | grep release"
};
Process p = Runtime.getRuntime().exec(cmd);
Nach dem Login kopieren

Mit der Option „-c“ kann die Shell Führt die angegebene Befehlszeichenfolge in einer Subshell aus und ermöglicht so die Verwendung von Pipes und anderen Shell-Funktionen.

Das obige ist der detaillierte Inhalt vonWie kann ich Piping mit Javas Runtime.exec() zuverlässig nutzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage