Heim > Java > javaLernprogramm > Wie kann ich Piped-Befehle mit Javas Runtime.exec() ausführen?

Wie kann ich Piped-Befehle mit Javas Runtime.exec() ausführen?

Linda Hamilton
Freigeben: 2024-12-24 04:29:15
Original
218 Leute haben es durchsucht

How Can I Execute Piped Commands Using Java's Runtime.exec()?

Ausführen von Piped-Befehlen mit Runtime.exec()

Trotz der inhärenten plattformübergreifenden Herausforderungen bietet die Runtime.exec()-Methode nur begrenzte Möglichkeiten Unterstützung für Piping in Java. So können Sie es nutzen:

Option 1: Shell-Skripte verwenden

Wie in der Antwort vorgeschlagen, können Sie ein Zwischenskript erstellen, das die Piping-Befehle kapselt. Zum Beispiel:

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

Dann führen Sie dieses Skript über Runtime.exec() aus:

Process process = Runtime.getRuntime().exec(new String[] {"/path/to/script"});
Nach dem Login kopieren

Option 2: Explizite Übergabe von Piping-Befehlen

Um die Shell zu umgehen, können Sie die Piping-Befehle innerhalb der Runtime.exec()-Argumente angeben Array:

String[] cmd = {
    "/bin/sh",
    "-c",
    "ls /etc | grep release"
};

Process process = Runtime.getRuntime().exec(cmd);
Nach dem Login kopieren

Dadurch wird sichergestellt, dass die Shell mit den expliziten Befehlen aufgerufen wird und diese entsprechend ausführt.

Das obige ist der detaillierte Inhalt vonWie kann ich Piped-Befehle mit Javas Runtime.exec() ausführen?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage