1 PDF entsprechend der Anzahl duplizieren
Hallo zusammen,
folgendes Problem stellt sich mir gerade:
Ich habe um die 100 PDFs, die wie vom Schema immer gleich aufgebaut sind:
123456, 456789, 998877, 445566.pdf
112233, 223344.pdf
995511.pdf
Also immer eine 6-stellige Zahl (und optional gefolgt von beliebig vielen Kommata und Leerzeichen).
Mein Ziel ist es, diese PDFs entsprechend der Anzahl der Zahlen zu duplizieren und diese dann nach der Zahl zu benennen.
Das heißt aus
123456, 456789, 998877, 445566.pdf
sollen 4 einzelne Dateien erstellt werden mit Namen:
123456.pdf
456789.pdf
998877.pdf
445566.pdf
Gibt es da einen kurzen Batch-Befehl, der das fix kann?
Mit Advance Renamer habe ich es vergeblich auch schon versucht.
Vielen Dank für eure Mühen und verschneite Grüße aus Hamburg
Kalisser
folgendes Problem stellt sich mir gerade:
Ich habe um die 100 PDFs, die wie vom Schema immer gleich aufgebaut sind:
123456, 456789, 998877, 445566.pdf
112233, 223344.pdf
995511.pdf
Also immer eine 6-stellige Zahl (und optional gefolgt von beliebig vielen Kommata und Leerzeichen).
Mein Ziel ist es, diese PDFs entsprechend der Anzahl der Zahlen zu duplizieren und diese dann nach der Zahl zu benennen.
Das heißt aus
123456, 456789, 998877, 445566.pdf
sollen 4 einzelne Dateien erstellt werden mit Namen:
123456.pdf
456789.pdf
998877.pdf
445566.pdf
Gibt es da einen kurzen Batch-Befehl, der das fix kann?
Mit Advance Renamer habe ich es vergeblich auch schon versucht.
Vielen Dank für eure Mühen und verschneite Grüße aus Hamburg
Kalisser
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 320422
Url: https://administrator.de/contentid/320422
Ausgedruckt am: 24.11.2024 um 22:11 Uhr
5 Kommentare
Neuester Kommentar
Powershell
Gruß
gci 'c:\Daten' -Filter *.pdf -pipelinevariable file | %{
$numbers = $_.Basename.Split(',') | %{$_.trim()}
if ($numbers.Count -gt 1){
$numbers | %{
copy-item $file -Destination "$($file.Directoryname)\$($_).pdf"
}
}
}
Kann man.
Etwa so
Etwa so
@echo off & setlocal
for %%a in ("C:\Daten\*.pdf") do (
for %%b in (%%~na) do copy "%%a" "%%~dpa%%b.pdf"
)
Hallo @Kalisser,
probier's mal so:
Benutzung: <script.bat> "123456, 456789, 998877, 445566.pdf"
Wenn du willst, dass die Ursprungsdatei gelöscht wird, Entferne das "REM" in der letzten Zeile.
ACHTUNG! Es wird nicht überprüft, ob die Dateien ordentlich kopiert wurden! Ich würde dir nicht empfehlen, automatisch zu löschen.
Gruß,
@Snowman25
probier's mal so:
Benutzung: <script.bat> "123456, 456789, 998877, 445566.pdf"
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET extension=%~x1
FOR /F "delims=, tokens=*" %%i IN ("%~1") DO SET a=%%~i
FOR /F "delims=." %%j IN ("%a%") DO SET a=%%~j
FOR %%k in ( %a% ) DO COPY "%~1" "%%k%extension%"
REM DEL "%~1"
Wenn du willst, dass die Ursprungsdatei gelöscht wird, Entferne das "REM" in der letzten Zeile.
ACHTUNG! Es wird nicht überprüft, ob die Dateien ordentlich kopiert wurden! Ich würde dir nicht empfehlen, automatisch zu löschen.
Gruß,
@Snowman25