Kommunikation mit batch datei

Status
Nicht offen für weitere Antworten.

tomcat

Mitglied
Hallo zusammen,

ich möchte gern verschiedene batch Dateien aus einer Java Anwendung heraus starten, deren Output auf entsprechende Listen umlenken (pro batch datei eine liste) und die Möglichkeit haben, Befehle an diese Batch Dateien zu senden. Nun hab ich das mit dem starten der Batch files und dem abfangen der Ausgaben und umlenken auf die Listen schon hinbekommen, aber irgendwie haperts an dem zusenden weiterer Befehle an diese Batch Dateien.
(Ich muß dazu sagen, das aus den Batchdateien auch wieder andere Java Progs ohne gui gestartet werden und die nun mal ab und zu ne eingabe erwarten).
Code:
public class ExecSim extends Thread{
	static final int MODE_WAITFOR	= 1;
	static final int MODE_CATCHOUTPUT	= 2;

	public void run(){
		try{
			runShellCommand(cmd, mode, dlm);
		}catch(IOException e){
			JOptionPane.showMessageDialog(Main.getInstance(),"IOException: "+e, "IOException", 0);
		}
	}

	public void runCommand(String cmd, int mode, DefaultListModel dlm)
	throws IOException
	{
	Runtime rt = Runtime.getRuntime();
	System.out.println("Running " + cmd);
	Process pr = rt.exec(cmd);
	while(true){
		if(isInterrupted()){
			System.out.println("INTERRUPT !!!");
			break;
		}
		if(mode == MODE_WAITFOR){
				dlm.addElement("WAITING for Termination");
				System.out.println("WAITING for Termination");
				try{
					pr.waitFor();
				}catch(InterruptedException e){}
			}else if(mode == MODE_CATCHOUTPUT){
				//read the output	
				BufferedReader procout = new BufferedReader(new InputStreamReader(pr.getInputStream()));				
				String line;
				while((line = procout.readLine()) != null){
					if(!line.equals("")){
						System.out.println("out > "+line);
						dlm.addElement("out> "+line);
					}
				}
			}	
		}
	}
}

Ich hab mir gedacht, das ich nun einfach die Geschichte mit dem BufferedReader zu nem BufferedWriter umschreibe aber irgendwie hat das nicht hingehauen, habt ihr ne idee, bzw ein konkreten vorschlag, wie ich Befehle an die laufende Batch datei schicken kann??? Es muß doch irgendwie über diese Process Anbindung gehen?!?!?

Danke für eure Hilfe

Thomas
 

SebiB90

Top Contributor
was hat den nicht hingehauen mit dem BufferedWriter?
so gehts ganz einfach:
Code:
BufferedWriter procout = new BufferedWriter(new OutputStreamWriter(pr.getOutputStream()));
 

tomcat

Mitglied
Hi zusammen,

sorry das ich es nich früher geschafft habe mal zu antworten, ich hab das noch mal mit dem BufferedWriter versucht und hab danach im debug modus festgestellt, dass das Problem wohl ein anderes ist. Ich möchte ja wie gesagt Befehle an die Batch datei senden und er hängt aber in der While Schleife, sobald die Batch Datei eine Eingabe erwartet fest, von daher kann ich den Befehl bzw eine Eingabe mit dem BufferedWriter gar nicht erst absetzten.
Code:
BufferedReader procout = new BufferedReader(new InputStreamReader(pr.getInputStream()));
BufferedWriter procin = new BufferedWriter(new OutputStreamWriter(pr.getOutputStream()));
String line;
while((line = procout.readLine()) != null){       //Hier stopt er so bald eine Eingabe erwartet wird
	if(!line.equals("")){
		System.out.println("out > "+line);
	dlm.addElement("out> "+line);
	}
}

if(send == true){
         procin.write(sendCmd, 0, sendCmd.length());
	send = false;
}

Hat da jemand eine kreative Idee bzw bereits Erfahrung mit und kann mir weiter helfen?

Ich dank euch/dir für die Hilfe!

TomCat
 

L-ectron-X

Gesperrter Benutzer
tomcat hat gesagt.:
Hat da jemand eine kreative Idee bzw bereits Erfahrung mit und kann mir weiter helfen?
Ich frage mich die ganze Zeit, warum du einer Batchdatei sagen willst, welchen Befehl sie ausführen soll.
Warum setzt du den Batchcode nicht direkt in deinem Java-Programm um?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
CptK Backpropagation parallelisieren: Kommunikation zwischen den Threads Allgemeine Java-Themen 7
L Kommunikation zwischen C# und Java? Allgemeine Java-Themen 5
R PIPE Kommunikation mit Prozess blockiert Allgemeine Java-Themen 0
M Checksummenprüfung bei Client Server kommunikation Allgemeine Java-Themen 3
D Interthread-Kommunikation Allgemeine Java-Themen 6
S Threads Kommunikation zwischen SocketThread und WorkerThread Allgemeine Java-Themen 11
0 Lösungsweg Client Server Kommunikation Fehlermeldung ausgeben Allgemeine Java-Themen 12
L Software-Design: Kommunikation mit SerialPort (RXTX) Allgemeine Java-Themen 2
F Serielle Kommunikation Allgemeine Java-Themen 20
A Kommunikation zwischen 2 Jar-dateien Allgemeine Java-Themen 16
S Kommunikation von Core und GUI über Schnittstellen Allgemeine Java-Themen 2
P Komponenten kommunikation Allgemeine Java-Themen 7
L Serielle Kommunikation Allgemeine Java-Themen 6
G Implementierung einer Kommunikation Allgemeine Java-Themen 7
B SerialPort Kommunikation - Pufferüberlauf Allgemeine Java-Themen 6
0 Sandbox und Applet Kommunikation Allgemeine Java-Themen 9
E kommunikation zwischen Fenstern Allgemeine Java-Themen 3
H Java C++ Interprozess Kommunikation Allgemeine Java-Themen 7
D Klassen Kommunikation Allgemeine Java-Themen 11
M Applet Servlet Kommunikation ein Problem bei externem Server Allgemeine Java-Themen 3
F Kommunikation zw 2 Java-Programmen mit unterschiedl Compiler Allgemeine Java-Themen 13
G Kommunikation mit Remotegeräten Allgemeine Java-Themen 2
A Kommunikation zwischen C++ und Java-Programm Allgemeine Java-Themen 4
J Kommunikation mit USB Gerät, das Midi-Signale sendet Allgemeine Java-Themen 4
G Kommunikation mit der seriellen Schnittstelle Allgemeine Java-Themen 6
H Kommunikation mit einem c-Prozess funzt nicht richtig Allgemeine Java-Themen 5
C Pattern für Kommunikation gesucht Allgemeine Java-Themen 3
B Kommunikation mit entferntem Thread Allgemeine Java-Themen 6
O kommunikation zw. objekten Allgemeine Java-Themen 7
G Kommunikation von zwei Java-Programmen Allgemeine Java-Themen 3
N Inter-Thread-Kommunikation Allgemeine Java-Themen 3
M Kommunikation mit externem Programm ueber Linux-Pipes Allgemeine Java-Themen 4
M Kommunikation zwischen 2 Programmen Allgemeine Java-Themen 7
G Kommunikation zwischen Threads und Gui Allgemeine Java-Themen 2
P kommunikation zwischen dialog und threads Allgemeine Java-Themen 4
K MVC - Kommunikation Controller <> Gui Allgemeine Java-Themen 5
P Kommunikation von Threads Allgemeine Java-Themen 5
V Kommunikation zwischen Programmen und Threads Allgemeine Java-Themen 7
H Servlet/Applet Kommunikation Allgemeine Java-Themen 2
C Kommunikation mit USB Port Allgemeine Java-Themen 1
E Es ist nicht möglich, eine Batch-Anweisung auszuführen. Allgemeine Java-Themen 9
Tobero Batch Vorgang zum output Allgemeine Java-Themen 3
I Javaaufruf aus Batch inkl. Parameter (Adminrechte) Allgemeine Java-Themen 2
J Batch datei öffnen und als Admin ausführen Allgemeine Java-Themen 43
T .jar über cmd ausführen (später dann batch) Allgemeine Java-Themen 6
buggy84 Ausführen einer Batch mit Parameterübergabe funktioniert nicht richtig Allgemeine Java-Themen 18
J batch datei wird nicht aufgerufen Allgemeine Java-Themen 11
R Batch / Shell-Skript in Jar.Datei einbinden? Allgemeine Java-Themen 5
M Batch zum Java Cache löschen Allgemeine Java-Themen 3
iB0T "goto" Befehl aus Batch in Java und Variablen wert immer wieder neu setzen Allgemeine Java-Themen 4
T Java Programm als Batch Befehl Allgemeine Java-Themen 6
H java.library.path mit einer Batch-Datei einstellen Allgemeine Java-Themen 3
M Compilieren auf der COnsole bzw batch Allgemeine Java-Themen 3
P Batch "Java minicompiler" Allgemeine Java-Themen 3
T Batch-File / keine Verbindung zur DerbyDB Allgemeine Java-Themen 3
capgeti batch datei funktioniert nicht! Jar wird nicht gestartet! Allgemeine Java-Themen 3
G Mit Batch-Datei verzeichnisse löschen Allgemeine Java-Themen 9
D Batch-Datei Eingabe Allgemeine Java-Themen 2
M JAVA in BATCH Datei Allgemeine Java-Themen 9
H Batch in Java Allgemeine Java-Themen 8
M Batch ausführen mit Leerzeichen im Pfad Allgemeine Java-Themen 7
F CP Problem Batch Datei Allgemeine Java-Themen 6
Developer_X Batch Programmierung Allgemeine Java-Themen 4
Developer_X Mit einer Batch Datei eine Java Datei starten Allgemeine Java-Themen 4
G batch- Datei ausführen Allgemeine Java-Themen 19
M Wie Java-Programm über Batch-file starten? Allgemeine Java-Themen 8
M Javaprozess mit Batch-Script synchronisieren Allgemeine Java-Themen 2
G Java und Batch Command Allgemeine Java-Themen 1
S Rückmeldung von Konsole(Batch) an Java Allgemeine Java-Themen 2
G Batch ohne Console? Allgemeine Java-Themen 6
R Erkennung der Java-Installation im Batch-File Allgemeine Java-Themen 2
C Java Batch Warte Problem Allgemeine Java-Themen 4
D Thread & Process: Beenden einer Batch-Datei Allgemeine Java-Themen 8
P Batch Datei erstellen Allgemeine Java-Themen 2
G Batch-Datei - javac Ausgaben anzeigen Allgemeine Java-Themen 5
H java Programme als batch starten Allgemeine Java-Themen 13
M JavaDoc per Batch? Allgemeine Java-Themen 7
X Parameter bei Start über Batch-Datei übergeben(Tag und Zeit) Allgemeine Java-Themen 3
F Programmaufruf durch Batch-Datei Allgemeine Java-Themen 9
F Batch Datei Allgemeine Java-Themen 3
D MS-Eingabeaufforderung/Batch Datei Allgemeine Java-Themen 5
kodela StatusBar-Anzeigen auch in Log-Datei ausgeben Allgemeine Java-Themen 3
G Maven Projekt JAR-Datei Allgemeine Java-Themen 6
E XML - Datei Darstellung in IntelliJ als Baum Allgemeine Java-Themen 2
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
D Erste Schritte Mp3 Datei kann nicht von der Festplatte geöffnet werden - mit ChatGPT erstellt Allgemeine Java-Themen 7
J Filenotfoundexception obwohl Datei existiert Allgemeine Java-Themen 6
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
S .exe Datei/Programm auslesen? Allgemeine Java-Themen 2
E Datei verschoben Event Allgemeine Java-Themen 3
D Datei mit "Kohsuke GitHub API" in Repository hochladen Allgemeine Java-Themen 2
S Bookmark HTML Datei einlesen, alle Links erhalten und manche editieren..? (aktuell JSoup) Allgemeine Java-Themen 4
melaniemueller Einzelne Zeile aus einer txt Datei in einem String speichern Allgemeine Java-Themen 12
G JavaFX Maven Projekt als .exe Datei exportieren Allgemeine Java-Themen 10
J (Geplante) Änderungen an einer Datei vorübergehend speichern und anwenden? Allgemeine Java-Themen 12
Neumi5694 Datei komprimiert Allgemeine Java-Themen 6
_user_q Obfuscate einer .jar-Datei mit ProGuard? Allgemeine Java-Themen 2
_user_q Verknüpfung einer .jar-Datei (liegt z. B. auf dem Desktop) im Autostart-Ordner erstellen? Allgemeine Java-Themen 20
E java mithilfe url .jar datei öffnen Allgemeine Java-Themen 9
E Java .exe Datei mit args starten Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben