Batch - Datei über das Kontextmenü (Senden an) des Windows Explorer umbenennen
Hallo,
ich möchte eine beliebige Word Datei mittels Batch umbenennen.
Als Ergebnis soll der neue Dateiname das Änderungsdatum sowie einen festen Text beinhalten (Beispiel: 2019-10-20_Test.docx).
Meine Idee war dies über das Kontextmenü der Datei und den Befehl "Senden an" zu lösen.
Ich kann den Dateinamen sowie den Dateityp auslesen und jeweils in einer Variable speichern.
Für das Umbenennen benötige ich den Pfad der Datei.
Beim Versuch den Pfad auszulesen erhalte ich immer nur den Pfad der .bat Datei.
Jemand eine Idee?
Danke.
Schöne Grüße
Alforno
ich möchte eine beliebige Word Datei mittels Batch umbenennen.
Als Ergebnis soll der neue Dateiname das Änderungsdatum sowie einen festen Text beinhalten (Beispiel: 2019-10-20_Test.docx).
Meine Idee war dies über das Kontextmenü der Datei und den Befehl "Senden an" zu lösen.
Ich kann den Dateinamen sowie den Dateityp auslesen und jeweils in einer Variable speichern.
Für das Umbenennen benötige ich den Pfad der Datei.
Beim Versuch den Pfad auszulesen erhalte ich immer nur den Pfad der .bat Datei.
Jemand eine Idee?
Danke.
Schöne Grüße
Alforno
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 507079
Url: https://administrator.de/contentid/507079
Ausgedruckt am: 22.11.2024 um 11:11 Uhr
10 Kommentare
Neuester Kommentar
for /f "tokens=1" %%a in ("%~t1") do ren "%~1" "%%a_Test%~x1"
Doch geht auch mit Leerzeichen hier getestet, deswegen ist auch alles vorschriftsmäßig gequoted.
Dann hast du es fehlerhaft kopiert, kopiere es nochmal. Denn %~1 entfernt bereits die entsprechenden Quotes um den Parameter. Hier geht es nämlich einwandfrei auf mit Leerzeichen, du musst einen Fehler gemacht haben. Habe es oben noch etwas vereinfacht. Ist ja ehrlich gesagt alter Pippifax den man blind runter tippt ...
Tschö.
edit: "echo" da für den Test da war noch entfernt
Tschö.
edit: "echo" da für den Test da war noch entfernt
s. mein Kommentar
Geht überall einwandfrei. Mach ich doch x mal am Tag!
edit: "echo" da für den Test da war noch entfernt
Geht überall einwandfrei. Mach ich doch x mal am Tag!
Weil heut Sonntag ist
@echo off &setlocal EnableDelayedExpansion
for /f "tokens=1" %%a in ("%~t1") do (set "fdate=%%a" &ren "%~1" "!fdate:~-4!-!fdate:~3,2!-!fdate:~0,2!_Test%~x1")