# Batch-Parameter übergeben mit ProcessBuilder



## roontafloor (3. Juli 2007)

Hallo zusammen

Zu meinem Problem:

Ich will mittels eines Servlets eine Batchdatei auf einer Windowsmaschine zum starten bringen, das Servlet funktioniert auch.


```
try {
            String[] para = {"cmd ", "/c ", "start ", test.bat xxx xx xxxxx xxxx xxxx xxxx"};

            ProcessBuilder builder = new ProcessBuilder(para);
            builder.directory(new File("C:/IVU/afab/win32/bin"));
            Process r = builder.start();
            Scanner s = new Scanner(r.getInputStream());
            while (s.hasNextLine()) {
                System.out.println(s.nextLine());
            }
            s.close();

        } catch (IOException e) {

            System.out.println("error");

        }
```
Wenn ich jetzt das Servlet starte dann öffnet es die Konsole an dem Pfad, in dem sich auch die Batch datei befindet, mehr passiert jedoch nicht, wenn ich aber auf der Windowskonsole eine weitere Batch erstelle, in der die Parameter schon übergeben sind

```
echo test.bat xxx xx xxxxx xxxx xxxx xxxx > vereinfacht.bat
```
und dann diese batch übergebe, statt jeder Parameter einzeln wie im ersten Codeausschnitt zusehen ist, dann funktioniert alles, jedoch muss ich weil die Parameter der Batchdatei ändern können sie einzeln übergeben und nicht mit einem echo Befehl in eine weitere Batch übergeben.

Wie bringe ich jetzt die Batch samt den Parametern zum laufen, im Bezug auf den ersten Codeausschnitt?


----------

