zero90
Goto Top

Umbenennen von Ordnernamen (anhand von Zeitstempel)

Hallo,
Es ist mal wieder so weit. Ich brauch wieder mal eure Hilfe.
Momentan versuche ich eine Batch zu schreiben, welche Dateien von einem Server auf einen Rechner kopiert. Dabei handelt es sich um das Kopieren von Datensicherungen.

Leider habe ich ein Problem, welches mein Wissen übersteigt. Beim Kopieren muss ich ja einen Pfad angeben. Der Ordner, in dem sich die benötigten Dateien befinden hat immer einen zufälligen namen, was es mit unmöglich macht den inhalt zu kopieren. Der ordnername ist immer zufälli befindet sich aber immer am gleichen ort. Darin befinden sich 8 backups, von denen ich immer das mit dem beusten zeitstempel kopieren will.


xcopy "c:\user\....\f67EA397\


In diesem ordner f67EA... Befinden sich die 8 ordner welche auch einenzufälligen ordnernamen haben.
Ich würde gerne den Ordner in dem sich alles befindet umbenennen in Backup und die 8 ordner die sich darin befinden in backup 1 bis 8 benennen.
Vielen dank im voraus
Gruß

Content-Key: 271727

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

Ausgedruckt am: 19.03.2024 um 03:03 Uhr

Mitglied: Roadrunner0815
Roadrunner0815 11.05.2015 aktualisiert um 13:14:16 Uhr
Goto Top
Da würde ich dir den Befehl "forfiles" empfehlen.
Bsp.:
Forfiles -pC:\user\...\ -S -M*.* -D-30 -c"CMD /C xcopy c:\Zierlordner"

Dieser Einzeiler würde dir alle Dateien die sich unter C:\user\... befinden, auch in Unterordner (Parameter S), den Dateinamen bzw Endung *.* haben und älter als 30 Tage sind, nach C:\Zielordner kopieren.
Statt den 30 Tagen kannst du da auch ein festes Datum oder einen anderen Zeitraum festlegen. Für genauere Infos einfach googlen.

Der Thread Batchdatei zum Umbenennen von Ordnern mit zufälligem Namen war doch auch von dir oder?
Mitglied: Zero90
Zero90 11.05.2015 um 14:27:16 Uhr
Goto Top
Jep jedoch hatte ich probleme...
Das umbenennen hat nur funktioniert wenn die batchdatei auf der selben ebene lag und ausgeführt wurde.. Also im selben ordner
Mitglied: Roadrunner0815
Roadrunner0815 11.05.2015 um 15:20:52 Uhr
Goto Top
Das liegt an deinem Arbeitspfad. Den musst du im Vorfeld anpassen. Den Befehl dafür hab ich aber leider gerade nicht parat.

Die obige Variante hat dieses Problem nicht. Ich habe neulich erst eine Batchdatei mit diesem u.a. Befehlen erstellt. Die Datei liegt bei mir auf C und ich bearbeite damit Ordner und Files auf dem Laufwerk J. Klappt prima!
Mitglied: Endoro
Endoro 11.05.2015 um 16:14:02 Uhr
Goto Top
Hey,

Zitat von @Zero90:

Der ordnername ist immer zufälli befindet sich aber immer am gleichen ort. Darin befinden sich 8 backups, von denen
ich immer das mit dem beusten zeitstempel kopieren will.
Befinden sich noch andere Ordner "am gleichen Ort"?

Gruss, Endoro
Mitglied: 114757
Lösung 114757 11.05.2015, aktualisiert am 14.05.2015 um 01:47:51 Uhr
Goto Top
Moin,
mit Powershell ginge das Umbenennen so, mal angenommen dein ominöser Ordner ist der einzige in dem entsprechenden Ordner:
$folder = "C:\user\blabla"  
gci $folder | ?{$_.PSIsContainer} | select -First 1 | %{
    $cnt = 1
    gci $_.Fullname | ?{$_.PSIsContainer} | sort CreationDate | %{rename-item $_.Fullname -NewName "Backup_$cnt" -Force; $cnt++}  
    rename-item $_.FullName -NewName "Backup" -Force  
}
Gruß jodel32
Mitglied: Zero90
Zero90 11.05.2015 um 20:00:59 Uhr
Goto Top
Nein, es befindet sich dort nur ein ordner. In diesem ordner befinden sich 8 weitere von denen ich den neusten benötige
Mitglied: Zero90
Zero90 11.05.2015 um 20:02:16 Uhr
Goto Top
Thanks @ all werde es am mittwoch testen face-smile