Jump to content

Per Batch String bearbeiten!


Gast Flipshot
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Ich habe in einer "Printer.bat" Datei folgende Zeilen stehen:

 

%TMP%\con2prt.exe /cd \\RFAXSV01\REDVDR01 ;REDVPC99

%TMP%\con2prt.exe /c \\RPRNSV01\REDVCS01 ;REDVPC99

%TMP%\con2prt.exe /c \\RPRNSV01\REDVMS01 ;REDVPC99

 

Beim Ausführen der Zeilen werden die Drucker zwar verbunden, es erscheint aber trotzdem eine Fehlermeldung wegen dem ";REDVPC99" am Ende, weil das nicht mehr als Parameter ausgewertet werden kann.

 

Wie kann ich mittels Batch-Befehlen die Zeilen bearbeiten, dass ";REDVPC99" abgeschnitten wird und nur noch der reine Befehl mit den richtigen Parametern ausgeführt wird?!

Link zu diesem Kommentar

Hi Flipshot,

 

irgendwie versteh ich Dein Problem net...

 

Du haste eine Batch Datei: Printer.bat

in dieser Batchdatei stehen Befehle zum Druckermapping mit einem Parameter am Ende der nicht ausgewertet werden kann und dadurch eine Fehlermeldung ausgibt (im Dosfenster)

 

Und jetzt willst Du wiederrum eine Batch Datei die die Parameter am Ende ignoriert?

 

Hast Du auf die Printer.bat keinen Zugriff?

 

Wenn die Fehler net sichtbar sein sollen, dann minimiere doch die DOSbox per Batch *g*

 

Cu Reyeg :)

Link zu diesem Kommentar
Du haste eine Batch Datei: Printer.bat

in dieser Batchdatei stehen Befehle zum Druckermapping mit einem Parameter am Ende der nicht ausgewertet werden kann und dadurch eine Fehlermeldung ausgibt (im Dosfenster)

 

Richtig :-)

 

Und jetzt willst Du wiederrum eine Batch Datei die die Parameter am Ende ignoriert?

 

Ja, ich muss per Batch Befehlen die Datei bearbeiten, so dass der letzte Parameter abgeschnitten wird und nur noch der Befehl mit den "zwei" gültigen Parametern ausgeführt wird.

 

Hast Du auf die Printer.bat keinen Zugriff?

 

Doch, aber die Frage versteh ich jetzt net ganz?!

 

Wenn die Fehler net sichtbar sein sollen, dann minimiere doch die DOSbox per Batch *g*

 

Das lass ich momentan machen, indem ich die "Printer.bat" mit "> Nul" ausführen lasse. Allerdings würde ich gerne anzeigen lassen welche Drucker verbunden werden, was die "Con2Prt.exe" recht gut kann.

 

Ich habe mir schon überlegt, ob ich das net mit KIX32 Scripten mach. Das wär wahrscheinlich die einfachste Lösung.

Link zu diesem Kommentar
For /f "Delims=;" %%i In (Printer.bat) do (

Echo %%I

)

 

Die Anweisung funktioniert im Prinzip wie ne Split-Funktion. Mit "For" durchlaufe ich die einzelnen Zeilen der "Printer.bat" und teile diese anhand des ";" in zwei Variablen auf. Variable %%i enthält dann den Teil vor dem ";" (also genau das was ich brauche), und Variable %%j enthält alles nach ";" (das was ich net brauche).

 

Bei dem Echo %%i fehlte noch das >> "Printer2.bat". In der Datei landet dann nur der Inhalt der Variable %%i, also alles was vor dem ";" stand.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...