Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PDF mit bestimmter Seitenzahl in Ordner verschieben

Frage Entwicklung Batch & Shell

Mitglied: Sternex

Sternex (Level 1) - Jetzt verbinden

28.10.2011 um 10:07 Uhr, 2883 Aufrufe, 9 Kommentare

Hallo,
ich habe folgende Frage:

Ich habe einen bestehenden Batch-Script der aus irgendeinem Grund nicht mehr will.

Ich habe viele Tausend PDF Dateien bei denen die Seitenzahl mittels "APGetPageCount" ausgelesen wird.
Ab einer bestimmten Seitenzahl soll (siehe: set /a "seitenzahl=4")
die Datei in den Zielpfad verschoben werden und alle anderen bleiben wo sie sind.

Jede Datei KANN eine dazugehörige PDF haben die mit kopiert werden soll.
Hier mein Aufbau:

Datei1_K1.pdf
Datei1_K2.pdf
Datei2_K1.pdf
Datei2_K2.pdf

Das Problem ist jetzt nur das es alle K1 Dateien verschiebt aber die passende K2 Datei nicht mitnimmt.
Vll kann jmd das Problem schnell lösen ;)
Hier die aktuelle Batch...

01.
@echo off & setlocal enabledelayedexpansion 
02.
 
03.
set "Quelle=C:\temp" 
04.
set "DateienK1=*_K1.pdf" 
05.
set "Ziel=C:\temp\big" 
06.
set "PgCt=F:\Programme\pdfcount.exe" 
07.
 
08.
for %%i in ("%Quelle%\%DateienK1%") do ( 
09.
REM    echo "%%~ni" 
10.
REM    for /f "tokens=1 delims=_K" %%a in ("%%~ni.pdf") do ( 
11.
REM        echo "%%~na" 
12.
REM    ) 
13.
   echo Datei: "%%~ni.pdf" 
14.
   call :Auswertung "%Quelle%\%%~ni.pdf" 
15.
16.
goto :eof 
17.
 
18.
:Auswertung 
19.
REM SEITENZAHL GROESSER ALS ANGEGEBENE ZAHL -> VERSCHIEBE IN KOMPAKT!! 
20.
set /a "seitenzahl=4" 
21.
 
22.
for /f "tokens=2 delims=: " %%n in ('call "%PgCt%" "%~1"^|findstr /c:"PageCount:"') do ( 
23.
        echo Seiten: %%n 
24.
        if "%%n" GTR "%seitenzahl%" ( 
25.
		echo verschiebe Dateien 
26.
                move %1 "%Ziel%">nul 
27.
                for /f "delims=K" %%f in ("%~n1") do ( 
28.
                        if exist "%Quelle%\%%fK2.pdf" move "%Quelle%\%%fK2.pdf" "%ziel%">nul 
29.
30.
31.
32.
goto :eof
Mitglied: 60730
28.10.2011 um 10:44 Uhr
Moin,

Ich habe einen bestehenden Batch-Script der aus irgendeinem Grund nicht mehr will.

  • bedeutet das, die lief mal?
  • mach mal das echo off weg...
  • schau mal, was der dann bei Zeile 27 ff macht. - bzw. nimm in Zeile 28 ganz hinten die >nul raus

  • Die Frage ist doch - warum so?

Ich vermute mal -ungetesteterweise .- der Bock steckt in Zeile 26/27
zuerst verschiebst du die "quelldatei" an einen anderen Ort und dann beziehst du dich wieder zurück zu Ihr...

Dreh die Zeilen mal um....
Bitte warten ..
Mitglied: Sternex
28.10.2011 um 11:03 Uhr
Ja es lief mal so. Aber mit deinen 2 Hinweisen hat es schon funktioniert.
Die Frage ist nur warum es ging und jetzt nichtmehr o.O

* mach mal das echo off weg...
  • schau mal, was der dann bei Zeile 27 ff macht. - bzw. nimm in Zeile 28 ganz hinten die >nul raus
Bitte warten ..
Mitglied: Sternex
28.10.2011 um 11:08 Uhr
Irrtum es funktioniert doch nicht.
Bitte warten ..
Mitglied: 60730
28.10.2011 um 11:15 Uhr
Salve.

Die Frage ist nur warum es ging und jetzt nichtmehr o.O
ja weil ähh also ähh wegen Plantquadrat xbr12 im Dräbbelhäpp mit Flourkohlenwasserstoff Meine Hände haben keine Löcher, die hat nur Inri und den kann ich grad nicht fragen...
ok - also du hast nun was genau gemacht?

das €echo off² weggenommen?

Zeile 26 raus und als (da wo jetzt Zeile 30 ist) wieder rein?

Was sagt denn die Batch, wenn am Ende eine Pause steht?

² Ab jetzt schreib ich nur noch €echo off
Bitte warten ..
Mitglied: Sternex
28.10.2011 um 11:25 Uhr
Fehler erkannt...
Es lag nur am Dateiname.

er sucht ja bis zum ersten K und vergleicht damit. delims=K
Der Dateiname hatte aber noch ein K drin und so ging es nicht.

Also Dateiname ändern und den Batch so lassen wie er ist ;)
Bitte warten ..
Mitglied: Skyemugen
28.10.2011 um 11:34 Uhr
[OT]
... das ist alles nur geklaut echo off! echo off! ... ach ne, das war etwas anderes ...

Mein echo off, mein echo off - das war mir einst ein Freund
doch nun hat es - hab's nicht gehofft - den Fehler nicht gezeigt
dann kam es weg - und siehe da - was hab ich mich gefreut
denn echo off, ja echo off hat vor sich hingeträumt ...

Nimm's weg echo on und bätscheln
[/OT]
Bitte warten ..
Mitglied: 60730
28.10.2011 um 11:50 Uhr
[OT]
Weine nicht, wenn dir der Fehler nicht auffällt, damm damm
es gibt einen, der zu dir hält.
Echo off off off
Bätch, Zehämde undsoweiter bricht, mein geliebtes Echo off verlass mich nicht.
Alles, alles geht vorbei, seh den Fehler nicht worüber ich mich freu
Echo off ich will ein Kind von dir
bin ich traurig, dann sagt es zu mir:
"The Error you have called is temporarily not available please try again later"
[/OT]

Wenn die Dateien immer K1.pdf heissen, dann mimm doch nicht das k, sondern die vorletzte Stelle des Dateinamens..

Kleb dann bitte auch nen grünen Haken dran.

Gruß
Bitte warten ..
Mitglied: Sternex
28.10.2011 um 12:50 Uhr
die Dateinamen an sich sind ja immer unterschiedlich und K1 & K2 sind immer die letzten Stellen der Datei.
Man muss nur vorher dran denken bei der Erstellung.

Trotzdem Danke für die Hilfe ;)

Mit freundlichen Grüßen
Bitte warten ..
Mitglied: 60730
28.10.2011 um 14:04 Uhr
Zitat von Sternex:
die Dateinamen an sich sind ja immer unterschiedlich und K1 & K2 sind immer die letzten Stellen der Datei.
  • na dann...
01.
for /f "delims=K" %%f in ("%~n1") do ( 
02.
                        if exist "%Quelle%\%%fK2.pdf" move "%Quelle%\%%fK2.pdf" "%ziel%">nul 
03.
                )
  • raus und
01.
set "working"=="%~n1" 
02.
set "working"=="%working:~-2%" 
03.
move "%Quelle%\%working%K1.pdf" "%ziel%" 
04.
move "%Quelle%\%working%K2.pdf" "%ziel%"
Man muss nur vorher dran denken bei der Erstellung.
der Bätch - dass es Poweruser gibt, denen der Admin vergessen hat die K Taste vom Keyboard wegzunehmen? *lach*

Trotzdem Danke für die Hilfe ;)

Gruß
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Sonstige Systeme
PDF-OCR Erkennung und verschieben in Ordner wenn Schlagwort enthalten (7)

Frage von SysAdm81 zum Thema Sonstige Systeme ...

Vmware
gelöst Manche VMs lassen sich nicht in Ordner verschieben (3)

Frage von Zippo97 zum Thema Vmware ...

Batch & Shell
gelöst Dateien anhand des Namens in neue Ordner verschieben (17)

Frage von Cookiemonster zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (32)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...