vertical
Goto Top

Automatischer PDF Ausdruck aus Verzeichnis

Hi zusammen,
ich suche unter Windows 7 32Bit ein BAT/CMD-Script, welches in ein Verzeichnis nach *.pdf sucht und wenn eine neue Datei vorhanden ist, diese Ausdruckt anschließend auf den Netzwerkdrucker schickt. Also im Prinzip nur einen Codesnipsel, der mir das Ergebnis, wie oben beschrieben liefert. Vielen Dank im Voraus!

Content-ID: 173810

Url: https://administrator.de/forum/automatischer-pdf-ausdruck-aus-verzeichnis-173810.html

Ausgedruckt am: 22.12.2024 um 20:12 Uhr

brammer
brammer 28.09.2011 um 09:49:07 Uhr
Goto Top
Hallo,

mit dem Nick fragst du sowas?
Da wirst du ncht auf viel Gegenliebe treffen.

Hast du den schon ein Grundgerüst für deine Batch?

brammer
Vertical
Vertical 28.09.2011 um 09:52:42 Uhr
Goto Top
Mir ist halt kein andere Name eingefallen, würde ihn aber gerne ändern ohne mich neu anmelden zu müssen.

Mein Gerüst schaut wie folgt aus. Der Befehl sleep.exe kommt vom Windows 2k3 Zero Administration Kit

:start
sleep 300
for /f %%i in ('dir /b /a-d "C:\Verzeichnis\*.pdf"'') do copy "%%i" \\pc-name\freigabe && del "%%i"
goto start
60730
60730 28.09.2011 um 10:31:46 Uhr
Goto Top
Moin,

Zitat von @Vertical:
Mir ist halt kein andere Name eingefallen, würde ihn aber gerne ändern ohne mich neu anmelden zu müssen.
  • da mußt du dich nur beim Master Frank melden, der kann das AFAIK...
Mein Gerüst schaut wie folgt aus. Der Befehl sleep.exe kommt vom Windows 2k3 Zero Administration Kit
:start
sleep 300
for /f %%i in ('dir /b /a-d "C:\Verzeichnis\*.pdf"'') do copy "%%i" \\pc-name\freigabe && del "%%i"  
goto start

kommt mir sehr bekannt vor - allerdings rate ich (sollte im gleichen Fred zu finden sein) eher den Weg zu nehmen starte Acrord32 mit der pdf um die zu drucken.

  • Nicht alle pdfs lassen sich per copy "drucken"
  • Und vielleicht ein ping, statt der unsäglichen sleep exe, verbrennt weniger Prozessorlast...
  • Ps klassischer Fall für eine Einsortierung in unserer Rurbrik Batches for Hell - bitte verschiebe deine Frage doch auch dorthin ...

Gruß

Vertical
Vertical 28.09.2011 um 11:36:00 Uhr
Goto Top
Danke aber mein Gerüst funktioniert scheinbar nicht. Wenn ich es genau so lasse oder auch gegen Acrobat Reader tausche, so bekomme ich keinen Ausdruck. War übrigens ein super Tip mit dem ping auf localhost.

PS: Namensänderung habe ich schon veranlasst face-smile
Vertical
Vertical 28.09.2011 um 15:05:18 Uhr
Goto Top
Hi TimoBeil,
vielen Dank für Deinen Tip. Nach einiger Suche habe ich jetzt den richtigen Thread gefunden und noch etwas verfeinert, da das Programm natürlich vollständig im Hintergrund laufen soll.

'---Snipp RunABatMinimized.vbs
Set WshShell = WScript.CreateObject("WScript.Shell")
Return = WshShell.Run("C:\Programme\PDF2Print\PDF2Print.cmd", 0, True)
Set WshShell = Nothing
'---Snapp RunABatMinimized.vbs

@echo off & setlocal
:start
FOR %%p in ("C:\Verzeichnis\*.pdf") do (
start "Ausdruck" "C:\Programme\Adobe\Reader 10.0\Reader\AcroRd32.exe" /p /h "%%p"
ping -n 10 localhost>nul
taskkill /F /IM AcroRd32.exe
copy "%%p" "C:\PDF2PrintFinish\">nul && del "%%p"
)
cls
goto start

PS: Name ist auch geändert face-smile
Pjordorf
Pjordorf 28.09.2011 um 17:33:59 Uhr
Goto Top
Hallo,

Zitat von @Vertical:
copy "%%p" "C:\PDF2PrintFinish\">nul && del "%%p"  
Schon mal über ein MOVE anstelle deines Kopieren und anschließeneds Löschen nachgedacht?
E:\>help move
Verschiebt Dateien und benennt Dateien und Verzeichnisse um.

Um eine oder mehrere Dateien zu verschieben:
MOVE [/Y| /-Y] [Laufwerk:][Pfad]Datei1[,...] Ziel

Um ein Verzeichnis umzubenennen:
MOVE [/Y| /-Y] [Laufwerk:][Pfad]Verz1 Verz2

  [Laufwerk:][Pfad]Datei1  Bezeichnet den Pfad und den Namen der zu
                           verschiebenden Datei(en).
  Ziel                     Bezeichnet den Zielort für die Datei. Das Ziel
                           kann ein Laufwerkbuchstabe mit Doppelpunkt, ein
                           Verzeichnisname oder eine Kombination beider sein.
                           Wenn Sie nur eine einzelne Datei verschieben,
                           können Sie auch einen Dateinamen angeben, um die
                           Datei beim Verschieben umzubenennen.
  [Laufwerk:][Pfad]Verz1   Bezeichnet das umzubenennende Verzeichnis.
  Verz2                    Bezeichnet den neuen Namen des Verzeichnisses.
  /Y                       Unterdrückt die Bestätigungsaufforderung zum
                           Überschreiben bestehender Zieldateien.
  /-Y                      Fordert vor dem Überschreiben bestehender
                           Zieldateien zur Bestätigung auf.
Die Option /Y ist in der COPYCMD-Umgebungsvariablen eventuell voreingestellt.
Dies kann durch die Option /-Y außer Kraft gesetzt werden. Standardmäßig
müssen Sie das Überschreiben von Dateien bestätigen, es sei denn der MOVE-
Befehl wird von einem Batchprogramm aus aufgerufen.

Gruß,
Peter
Skyemugen
Skyemugen 28.09.2011 um 18:20:35 Uhr
Goto Top
warum mag eigentlich niemand print ?