Mit Powershell und Regulären Ausdrücken Dateien umbenennen.

Ausgehend von Powershell und Reguläre Ausdrücke hier eine Erweiterung des Skripts dahingehend, dass der alte Pfad zerlegt wird und mit dem sauberen Dateinamen wieder zusammengebaut wird.

ls -recurse |  % {
if ($_.name -match "\d{8}_\d{8}.+") {
    $full  =  $_.fullname 
    $split =  $_.fullname.split("\") 
    $last  = $split[$split.length-1]
    $newpath = $split[0]
    foreach ($number in 1..($split.length-2) ) { $newpath += "\" + $split[$number] }
        $newpath += "\" + $last.substring(9,$last.length-9)
    }
    "mv"+ "`t" + $full + "`t" + $newpath
}

Geht sogar noch deutlich einfacher, wenn man einfach den Dateinamen im vollen Pfad sucht und durch die saubere Version ersetzt:

ls -recurse |  % {
if ($_.name -match "\d{8}_\d{8}.+") {
    rni $_.fullname $_.name.replace($_.name,$_.name.substring(9,$_.name.length-9))
}}

Uwe

Uwe Ziegenhagen mag LaTeX und Python, auch gern in Kombination. Hat Dir dieser Beitrag geholfen und möchtest Du Dich dafür bedanken? Dann unterstütze doch vielleicht die Dingfabrik Köln e.V. mit einem kleinen Beitrag. Details zur Bezahlung findest Du unter Spenden für die Dingfabrik.

More Posts - Website