mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Probleme mit dem Desktop oder dem Datei Explorer?
Benutzeravatar
Karthagos
Senior
Senior
Beiträge: 414
Registriert: 21.12.2014, 21:57
Hat sich bedankt: 50 Mal
Danke erhalten: 28 Mal

mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Karthagos » 08.03.2025, 19:04

Hallo, im Explorer kann ich mehrere Dateien markieren und einen gemeinsamen Dateinamen vergeben.
Zur Unterscheidung werden die Dateinamen durch eine fortlaufende Zahl in Klammern ergänzt. Wie kann ich die Klammern entfernen, sodass nur noch die Zahl angezeigt wird.
  • Beispiel: Test (1).jpg, Test (2).jpg usw. in Test 1.jpg, Test 2.jpg usw.
Natürlich kann ich das mit IrfanView oder einem Umbenennungstool realisieren, aber das ist bei wenigen Dateien aufwändig.
Ich hatte versucht, das Script von Holgi aus dem Beitrag
viewtopic.php?t=32904&hilit=removebg
@echo off
setlocal enabledelayedexpansion
:: Definiere den zu entfernenden Text
set "REMOVE_TEXT=-removebg-preview"
:: Durchlaufe alle Dateien im Ordner
for %%F in (*%REMOVE_TEXT%*.*) do (
set "OLDNAME=%%F"
set "NEWNAME=%%F"
set "NEWNAME=!NEWNAME:%REMOVE_TEXT%=!"

if not "!OLDNAME!"=="!NEWNAME!" ren "!OLDNAME!" "!NEWNAME!"
)
echo Umbenennung abgeschlossen.
pause
umzuschreiben, aber das ist mir nicht gelungen. Hoffe, es hat noch jemand einen Tipp
Gruß Günther
—————————————————————————————————————————————
Windows 11 Pro - 24H2 • Office 2019 - 32bit • Intel Core i5-9400F 2.90 GHz • 16 GB RAM • 480GB SSD
—————————————————————————————————————————————
Tweaks/Tools: ExplorerPatcher • WinaeroTweaker • OpenShell (ClassicShell) • W10Privacy • FileMenuTools

Tante Google

mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Tante Google » 08.03.2025, 19:04


Benutzeravatar
Holgi
Guru
Guru
Beiträge: 3098
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 392 Mal
Danke erhalten: 509 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Holgi » 08.03.2025, 20:28

als Powershell Script:

Code: Alles auswählen

# -*- coding: utf-8 -*-

# Laden der Windows Forms Bibliothek für den Ordnerdialog
Add-Type -AssemblyName System.Windows.Forms

# Erstellen des Ordnerauswahldialogs
$folderBrowser = New-Object System.Windows.Forms.FolderBrowserDialog
$folderBrowser.Description = "Wählen Sie den Ordner mit den Dateien aus:"
$folderBrowser.RootFolder = "MyComputer"

# Ordnerdialog anzeigen und Ergebnis speichern
$dialogResult = $folderBrowser.ShowDialog()

# Falls kein Ordner ausgewählt wurde, Skript beenden
if ($dialogResult -ne [System.Windows.Forms.DialogResult]::OK -or [string]::IsNullOrWhiteSpace($folderBrowser.SelectedPath)) {
    Write-Host "Kein Ordner ausgewählt. Skript wird beendet." -ForegroundColor Red
    exit
}

# Gewählten Ordner speichern
$ordner = $folderBrowser.SelectedPath
Write-Host "Gewählter Ordner: $ordner" -ForegroundColor Cyan

# Dateien suchen, die dem Muster "(n)" entsprechen
$files = Get-ChildItem -Path $ordner -File | Where-Object { $_.Name -match '\(\d+\)' }

# Falls keine passenden Dateien gefunden werden
if ($files.Count -eq 0) {
    Write-Host "Keine passenden Dateien gefunden. Skript wird beendet." -ForegroundColor Yellow
    exit
}

# Dateien umbenennen
foreach ($file in $files) {
    # Neuen Dateinamen generieren (Klammern entfernen)
    $newName = $file.Name -replace '\((\d+)\)', ' $1'
    $newPath = Join-Path -Path $ordner -ChildPath $newName

    # Überprüfen, ob der neue Dateiname bereits existiert
    if (!(Test-Path -Path $newPath)) {
        Rename-Item -Path $file.FullName -NewName $newName
        Write-Host "Umbenannt: $($file.Name) -> $newName" -ForegroundColor Green
    } else {
        Write-Host "Übersprungen: $newName existiert bereits." -ForegroundColor Yellow
    }
}

Write-Host "Fertig! Alle passenden Dateien wurden umbenannt." -ForegroundColor Cyan
z.B: als rename.ps1 abspeichern (im UTF8 Format)
Set-ExecutionPolicy Unrestricted -Scope Process
.\rename.ps1
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
Karthagos
Senior
Senior
Beiträge: 414
Registriert: 21.12.2014, 21:57
Hat sich bedankt: 50 Mal
Danke erhalten: 28 Mal

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Karthagos » 08.03.2025, 20:47

Hallo Holgi, vielen Dank. Habe das Script als rename.ps1 im UTF8-Format im entsprechenden Ordner gespeichert.
rename.jpg
Aber mit dem Ausführen in Powershell komme ich leider nicht weiter, bitte nochmal um Unterstützung.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Gruß Günther
—————————————————————————————————————————————
Windows 11 Pro - 24H2 • Office 2019 - 32bit • Intel Core i5-9400F 2.90 GHz • 16 GB RAM • 480GB SSD
—————————————————————————————————————————————
Tweaks/Tools: ExplorerPatcher • WinaeroTweaker • OpenShell (ClassicShell) • W10Privacy • FileMenuTools

Benutzeravatar
Holgi
Guru
Guru
Beiträge: 3098
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 392 Mal
Danke erhalten: 509 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Holgi » 08.03.2025, 23:26

Das Script muss nicht im Ordner mit den Dateien liegen!
Starte Powershell als Admin
dann eingeben:
Set-ExecutionPolicy Unrestricted -Scope Process
dann eingeben:
.\rename.ps1
Es öffnet sich ein Fenster und da gibst du dann den Ordner an, in welchem sich die umzubenenenden Dateien befinden
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
Holgi
Guru
Guru
Beiträge: 3098
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 392 Mal
Danke erhalten: 509 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Holgi » 08.03.2025, 23:34

du kannst auch dieses Script nehmen. Unterschied: hier musst du zuvor im Script selbst den Ordner vorgeben (ändere "Bilder neu" in deinen Ordnernamen):
die Vorgehensweise ist sonst gleich. PS öffnen. > Execution policy > .\rename2.ps1
rename2.ps1

Code: Alles auswählen

# -*- coding: utf-8 -*-

# Fester Ordnerpfad (Hier anpassen!)
$ordner = "C:\Bilder neu"  # <--- ÄNDERE DIESEN PFAD NACH BEDARF

# Überprüfen, ob der Ordner existiert
if (!(Test-Path -Path $ordner -PathType Container)) {
    Write-Host "Der angegebene Ordner existiert nicht: $ordner" -ForegroundColor Red
    exit
}

Write-Host "Verwender Ordner: $ordner" -ForegroundColor Cyan

# Dateien suchen, die dem Muster "(n)" entsprechen
$files = Get-ChildItem -Path $ordner -File | Where-Object { $_.Name -match '\(\d+\)' }

# Falls keine passenden Dateien gefunden werden
if ($files.Count -eq 0) {
    Write-Host "Keine passenden Dateien gefunden. Skript wird beendet." -ForegroundColor Yellow
    exit
}

# Dateien umbenennen
foreach ($file in $files) {
    # Neuen Dateinamen generieren (Klammern entfernen)
    $newName = $file.Name -replace '\((\d+)\)', ' $1'
    $newPath = Join-Path -Path $ordner -ChildPath $newName

    # Überprüfen, ob der neue Dateiname bereits existiert
    if (!(Test-Path -Path $newPath)) {
        Rename-Item -Path $file.FullName -NewName $newName
        Write-Host "Umbenannt: $($file.Name) -> $newName" -ForegroundColor Green
    } else {
        Write-Host "Übersprungen: $newName existiert bereits." -ForegroundColor Yellow
    }
}

Write-Host "Fertig! Alle passenden Dateien wurden umbenannt." -ForegroundColor Cyan
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
Holgi
Guru
Guru
Beiträge: 3098
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 392 Mal
Danke erhalten: 509 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Holgi » 09.03.2025, 00:28

wenn dir das mit dem Powershellaufruf zu kompliziert ist, dann kann du auch eine zusätzliche Batch-Datei erstellen mit folgendem Inhalt:
rename.cmd

Code: Alles auswählen

@ECHO OFF
PowerShell.exe -NoProfile -Command "& {Start-Process PowerShell.exe -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%~dpn0.ps1""' -Verb RunAs}"
abspeichern dann als rename.batch bzw. rename2.batch oder eben genau (!) so, wie der Name des PS-Scripts, nur eben mit der Endung .cmd
Diese Datei muss im gleichen Ordner sein, wie das PS-Script.
Dann einfach mit Doppelklick die .cmd aufrufen (die dann das PS-Script ausführt). Du sparst dir also das Öffnen einer Powershell-Konsole.
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
Karthagos
Senior
Senior
Beiträge: 414
Registriert: 21.12.2014, 21:57
Hat sich bedankt: 50 Mal
Danke erhalten: 28 Mal

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Karthagos » 09.03.2025, 10:01

Hallo Holgi,
habe mich jetzt (mit Deinen Erklärungen) an Powershell und .\rename.ps1 gewagt.
Die rename.ps1 habe ich in das Verzeichnis mit den Bildern gelegt, aber ich denke, das ist nicht relevant.
Leider kommt eine Fehlermeldung
rename.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Gruß Günther
—————————————————————————————————————————————
Windows 11 Pro - 24H2 • Office 2019 - 32bit • Intel Core i5-9400F 2.90 GHz • 16 GB RAM • 480GB SSD
—————————————————————————————————————————————
Tweaks/Tools: ExplorerPatcher • WinaeroTweaker • OpenShell (ClassicShell) • W10Privacy • FileMenuTools

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2725
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 406 Mal
Danke erhalten: 422 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von g-force » 09.03.2025, 10:05

Das ".\" vor "rename.ps1" ist mMn nicht richtig bzw. überflüssig. Evtl. den kompletten Pfad eingeben.
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/PzsffQNWU

Benutzeravatar
Karthagos
Senior
Senior
Beiträge: 414
Registriert: 21.12.2014, 21:57
Hat sich bedankt: 50 Mal
Danke erhalten: 28 Mal

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Karthagos » 09.03.2025, 10:26

Hallo g-force, vielen Dank, mit dem Befehl "O:\Kopie\rename.ps1", also komplettem Pfadnamen hat es funktioniert.
Das Ergebnis weist allerdings zwei Leerzeichen vor der Zahl aus, ich vermute das muss man im Script ändern.
P.S. Die doppelten Leerzeichen habe ich über eine Scriptänderung wegbekommen

Außerdem werde ich mal die anderen Vorschläge von Holgi testen, über cmd wäre es mir natürlich am liebsten.
Gruß Günther
—————————————————————————————————————————————
Windows 11 Pro - 24H2 • Office 2019 - 32bit • Intel Core i5-9400F 2.90 GHz • 16 GB RAM • 480GB SSD
—————————————————————————————————————————————
Tweaks/Tools: ExplorerPatcher • WinaeroTweaker • OpenShell (ClassicShell) • W10Privacy • FileMenuTools

Benutzeravatar
Karthagos
Senior
Senior
Beiträge: 414
Registriert: 21.12.2014, 21:57
Hat sich bedankt: 50 Mal
Danke erhalten: 28 Mal

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Karthagos » 09.03.2025, 10:45

Hallo Holgi und g-force, habe das Ganze jetzt mit der batch-Lösung hinbekommen, so ist es perfekt.
Vielen Dank nochmals für Eure kompetente Hilfe :dankeschoen: und einen schönen Sonntag
Gruß Günther
—————————————————————————————————————————————
Windows 11 Pro - 24H2 • Office 2019 - 32bit • Intel Core i5-9400F 2.90 GHz • 16 GB RAM • 480GB SSD
—————————————————————————————————————————————
Tweaks/Tools: ExplorerPatcher • WinaeroTweaker • OpenShell (ClassicShell) • W10Privacy • FileMenuTools

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2725
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 406 Mal
Danke erhalten: 422 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von g-force » 09.03.2025, 10:47

Du kannst ja mal diese CMD testen (muß im gleichen Ordner wie die Dateien liegen):

Code: Alles auswählen

@echo off
setlocal enabledelayedexpansion

:: Den Ordner des Skripts verwenden
set "ordner=%~dp0"

:: Überprüfen, ob der Ordner existiert
if not exist "%ordner%" (
    echo Der Ordner existiert nicht. Skript wird beendet.
    exit /b
)

:: Dateien suchen, die dem Muster "(n)" entsprechen
for %%f in (%ordner%(*(*).*) ) do (
    set "file=%%~nxf"
    echo !file! | findstr /r "\([0-9]*\)" >nul
    if !errorlevel! equ 0 (
        :: Neuen Dateinamen generieren (Klammern entfernen)
        set "newName=!file:(= !"
        set "newName=!newName:) =!"
        
        :: Überprüfen, ob der neue Dateiname bereits existiert
        if not exist "%ordner%\!newName!" (
            ren "%%f" "!newName!"
            echo Umbenannt: %%f -> !newName!
        ) else (
            echo Uebersprungen: !newName! existiert bereits.
        )
    )
)

echo Fertig! Alle passenden Dateien wurden umbenannt.
endlocal
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/PzsffQNWU

Benutzeravatar
Holgi
Guru
Guru
Beiträge: 3098
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 392 Mal
Danke erhalten: 509 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Holgi » 09.03.2025, 11:15

hier noch mal wie es aussieht, ohne vor dem rename in Powershell:
Powershell fail.JPG
so mit vor dem rename in Powershell:
Powershell good.JPG
und so läuft es dann:
Powershell done.JPG
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
Holgi
Guru
Guru
Beiträge: 3098
Registriert: 12.05.2018, 12:33
Hat sich bedankt: 392 Mal
Danke erhalten: 509 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von Holgi » 09.03.2025, 11:28

@g-force:
hast du dein Script einmal selbst getestet? bei mir funzt es nicht.
Darüberhinaus hatte ich selbst schon Versuche angestellt, das mit einfachem Batch statt Powershell hinzubekommen, jedoch werden die Metadateien bei .jpg durch das Umbenennen mit .cmd zerstört.
Also selbst wenn dann die Klammern wegwaren, waren die Bilder nicht mehr anzeigbar.
PDF24 angepasste Installation (nur PDF Druckertreiber) per Script: viewtopic.php?t=30284
Winget (Desktop App Installer) für Windows Versionen ohne Store installieren (HowTo): viewtopic.php?t=26214
Vorstellung: tiny11builder; Script zur Verschlankung von Windows 11: viewtopic.php?t=30134
Windows StartMenü Empfohlen (Recommended Section) komplett ausblenden: viewtopic.php?t=30574
Hyper-V VM per Script erstellen viewtopic.php?t=25114

Benutzeravatar
g-force
Elite
Elite
Beiträge: 2725
Registriert: 07.10.2016, 19:30
Hat sich bedankt: 406 Mal
Danke erhalten: 422 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von g-force » 09.03.2025, 11:53

Nein, habe ich nicht getestet. Daß dabei Metadaten zerstört werden, ist natürlich mehr als suboptimal.
Windows VISTA x64 - Integration ALLER Updates: viewtopic.php?t=29624
Windows 7 x86/x64 - Integration ALLER Updates: viewtopic.php?t=26485
Windows 8.1 x86/x64 - Integration ALLER Updates: viewtopic.php?t=28193
Windows XP x86/x64 ISO mit allen Updates: viewtopic.php?t=28348
Mein Home-Server: http://gofile.me/7psKS/PzsffQNWU

Benutzeravatar
DK2000
Legende
Legende
Beiträge: 10012
Registriert: 03.04.2018, 00:07
Hat sich bedankt: 223 Mal
Danke erhalten: 686 Mal
Gender:

Re: mehrere Dateien im Explorer gleichzeitig umbenennen und Klammern entfernen

Beitrag von DK2000 » 09.03.2025, 12:06

Wie sah denn die Batch aus, welche Metadaten zerstört? Das kenne ich so noch nicht.

Antworten