Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Dateinamen vergleichen und ggf. mit Datum Zeit erweitern

Mitglied: Dino2002

Dino2002 (Level 1) - Jetzt verbinden

08.08.2008, aktualisiert 09:47 Uhr, 8602 Aufrufe, 3 Kommentare

Hallo zusammen,

auf einem w2k3 System werden täglich neue Dateien abgelegt. Die neuen Dateien sollen im gleichen Verzeichnis mit aktuellem Datum sowie der Uhrzeit über einen geplanten Batch Job erweitert werden z. B. dateiA.txt in dateiA_Datum_Uhrzeit.txt.

Die Umbenennung funktioniert soweit, aber ich stehe weiter vor dem Problem, dass bei einem erneuten Aufruf der Batch, der Dateiname immer wieder um das aktuelle Datum sowie Uhrzeit erweitert wird - dateiA_Datum_Uhrzeit_Datum_Uhrzeit_Datum_Uhrzeit.txt …

Die Batch sieht so aus

@echo off
set mydate=%date:~-4%%date:~-7,2%%date:~-10,2%
set mytime=%time:~-11,2%%time:~-8,2%%time:~-5,2%
for /R D:\Incoming\ %%d IN (*.*) DO (
move %%d %%~dpnd_%mydate%_%mytime: =0%.txt
)
:exit

Wie könnte die Batch denn aussehen, wenn sie den Dateinamen vor der Erweiterung auf den String _Datum_Uhrzeit = z. B. „_20080807_213133“ überprüft bevor sie das aktuelle Datum&Uhrzeit einfügt?

Auf dem System darf ich nur mit w2k3 Boardmitteln arbeiten und von daher die Batch-Lösung. Ich habe bereits einige Beiträge gelesen aber leider kriege ich den Einstieg nicht so hin - vielen Dank in Voraus
Mitglied: stbewo
08.08.2008 um 08:05 Uhr
Hi Dino,

kannst Du die umbenannten Files in der FOR Schleife nicht mit einem Read Only versehen? Die können mit einem weiteren Batchlauf nicht mehr verändert werden.

Gruß
Stefan
Bitte warten ..
Mitglied: bastla
08.08.2008 um 08:22 Uhr
Hallo Dino2002 und willkommen im Forum!

Soferne Du hinsichtlich des Dateinamensformates "Name_Datum_Zeit" sicher sein kannst, müsste es ja genügen, vor dem Umbenennen zu überprüfen, ob der Name bereits das heutige Datum (soferne nicht auch ältere Dateien zu berücksichtigen wären) enthält (die Zeit ändert sich ja bei jedem Durchlauf):
01.
@echo off & setlocal 
02.
set "mydate=%date:~-4%%date:~-7,2%%date:~-10,2%" 
03.
set "mytime=%time:~-11,2%%time:~-8,2%%time:~-5,2%" 
04.
set "mytime=%mytime: =0%" 
05.
for /R D:\Incoming\ %%d IN (*.*) DO ( 
06.
	for /f "tokens=2 delims=_" %%i in ("%%~nd") do ( 
07.
		if "%%i" neq "%mydate%" move "%%d" "%%~dpnd_%mydate%_%mytime%.txt" 
08.
09.
)
Das Umwandeln ev in %mytime% enthaltener Leerzeichens in "0" braucht eigentlich nur einmal (vor der Schleife) zu erfolgen, und mit den Anführungszeichen um Dateinamen/Pfade herum erfolgt eine Absicherung gegen Probleme wegen ev darin enthaltener Leerzeichen.

Willst Du übrigens wirklich allen Dateien den Typ ".txt" geben, egal, welchen sie vorher hatten? Falls nicht, wäre ".txt" durch "%%~xd" zu ersetzen.
Nachtrag: Noch sicherer (unter der Voraussetzung, dass nur bereits mit dem Datums- / Uhrzeitzusatz versehene Dateien den Namensbestandteil "_20" [damit sollte es bis zum Ende des Jahrhunderts funktionieren ] enthalten) wäre:
01.
@echo off & setlocal 
02.
set "mydate=%date:~-4%%date:~-7,2%%date:~-10,2%" 
03.
set "mytime=%time:~-11,2%%time:~-8,2%%time:~-5,2%" 
04.
set "mytime=%mytime: =0%" 
05.
for /R D:\Incoming\ %%d IN (*.*) DO ( 
06.
	echo %%~nd|findstr "_20">nul || move "%%d" "%%~dpnd_%mydate%_%mytime%.txt" 
07.
)
Grüße
bastla
Bitte warten ..
Mitglied: Dino2002
08.08.2008 um 09:46 Uhr
Hallo Bastla,

juhu es funktioniert "FREU" - ich habe es mir viel komplizierter vorgestellt. Damit dürfte die Batch länger funktionieren als ich

@Stefan, ebenfalls eine gute Idee - habe schon mit den Gedanken gespielt diese zu implementieren.

Vielen Dank,

Gruß Dino
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datum vergleichen
gelöst Frage von Klaus20Batch & Shell11 Kommentare

Hallo Zusammen, vielleicht kann mir jemand (wie schon öfters) mir bei einer Abfrage helfen. Ich möchte gerne falls das ...

Batch & Shell
Dateiname mit Powershell erweitern
gelöst Frage von akoch85Batch & Shell28 Kommentare

Hallo, ich benötige ein Script mit dem ich meine Bilder die sich in einem Ordner befinden umbenenne bzw. erweitern ...

Batch & Shell

Vergleich einer Zeichenfolge in zwei Dateinamen

Frage von hongziehongBatch & Shell3 Kommentare

Hallo zusammen, ich möchte den Inhalt (ich weiß nicht, ob Variable das richtige Wort dafür wäre) zweier Dateinamen jeweils ...

Batch & Shell

Datum des Vormonats als Dateiname

gelöst Frage von n0cturneBatch & Shell2 Kommentare

Hallo Zusammen, ich habe ein Batch Skript, welches eine Datei erzeugt. Diese Datei soll den Namen "DATEV-JAHR-MONAT.csv" haben - ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 9 StundenWindows 103 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 12 StundenAdministrator.de Feedback10 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 1 TagGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...