gerrossa
Goto Top

PDF-Dateien via Powershell umbenennen (Schleife)

Hallo zusammen,

folgende Ausgangssituation:

450x PDF-Dokumente. Den Inhalt dieser PDF-Dateien lasse ich mit pdf2text (Xpdf-Tools) auslesen und in eine Textdatei mit identischem Namen packen.

Nun wurde ich gerne via Powershell eine bestimmte Zeile dieser Textdatei(en) auslesen und die entsprechende PDF nach diesem Wert umbennen. Das ganze als Schleife für alle 450x PDF-Dokumente.

Beispiel:

- 1234.pdf -> 1234.txt
- Auslesen von Zeile 11 (xyz)
- Umbenennen der 1234.pdf in xyz.pdf
- Schleife für nächste Datei

Mit (Get-Content "$loc\Temp\1234.txt")[11] könnte ich die Zeile auslesen, jetzt fehlt "nur" noch die Schleife für alle weiteren Dateien (ggf. als Basis eine weitere Textdatei mit den Dateinamen).

Kann hier jemand eine Hilfestellung geben?

Vielen Dank vorab!

Gruß

Content-ID: 668552

Url: https://administrator.de/contentid/668552

Printed on: October 15, 2024 at 16:10 o'clock

TK1987
Solution TK1987 Oct 02, 2024 updated at 11:18:57 (UTC)
Goto Top
Moin,

$Source = "D:\Pfad\zum\Quellordner"  
$illegalChars = [System.IO.Path]::GetInvalidFileNameChars().Foreach({[regex]::Escape($_)}) -Join '|'  

Foreach ($file in Get-ChildItem "$Source\*.txt") {  
  $line11 = (Get-Content -Path $file -TotalCount 11)[-1] -replace $illegalChars
  Rename-Item -Path "$Source\$($file.Basename).pdf" -NewName "$line11.pdf"  
}

Gruß Thomas