cmd Befehl ausführen

Diskutiere cmd Befehl ausführen im Java Basics - Anfänger-Themen Bereich.
F

Fohnbit

Hallo,

ich muss unter Linux ab und zu ein cmd befehl ausführen. Grundsätzlich mach ich das so:
Java:
try {
                    ProcessBuilder builder = new ProcessBuilder();
                    builder.command("qrencode", "-o", clientName + ".png", "-t", "png", "<", clientName + ".conf");
                    builder.directory(new File(System.getProperty("user.home")));
                    builder.start();
                } catch (IOException e) {
                    e.printStackTrace();
                }
Auszuführen wäre der Befehl:
Bash:
qrencode -o VPN_Client_3.png -t png < VPN_Client_3.conf
Ich erstelle mit der Variable "clientName" auch andere Dateien und der Pfad passt. Auch wird ein .png erstellt, aber der QR Code ist nicht gültig.
Ich denk in diesem Fall macht das "<" im builder ein Problem?
 
J

JustNobody

Also die Erzeugung von QR-Codes würde ich nicht über ein externes Programm machen sondern direkt in Java. Entsprechende Libraries gibt es ja zur genüge.

Dann könntest Du das auf jeden Fall über ein Shellscript lösen, das dann den entsprechenden Aufruf macht. Dann hättest du nur ein "createQRCode.sh clientname" als Aufruf. Und in dem Script kannst Du dann alles so machen, wie Du möchtest.

Oder was mir noch einfällt wäre ein "bash -c" Aufruf. Der Aufruf wäre dann als etwas wie
bash -c "qrencode -o VPN_Client_3.png -t png < VPN_Client_3.conf"

Das kannst Du ja mal in einem Terminal ausprobieren ...
 
Thema: 

cmd Befehl ausführen

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben