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 Per Batch - Datum als Dateiname

Mitglied: SelenSilence

SelenSilence (Level 1) - Jetzt verbinden

26.09.2007, aktualisiert 23.10.2012, 7935 Aufrufe, 2 Kommentare

Hallo,

ich bin am verzweifeln. Irgendwie schaff ich es einfach nicht das Erstelldatum als Dateinamen zu setzen und dann diese umbenannte Datei zu verschieben.
Hier hatte ich folgenden Beitrag gefunden -> https://www.administrator.de/forum/erstellungsdatum-auslesen-und-als-neu ...
Ich hab da auch nicht soo die Ahnung von, aber egal wie ich es versuche es will einfach nicht klappen.

Hiermit verschiebt er schonmal.
01.
@echo off & setlocal 
02.
pushd %2 
03.
for /F "delims=" %%f in  ('dir /b /a-d %1 ^2^>nul') do if /i %%~sf NEQ %~s0 call :loop "%%f" 
04.
PopD & goto :eof 
05.
:loop 
06.
Datei: %1 Dateidatum: %~t1 
07.
REM MyDateTime im Format JJJJ-MM 
08.
for /f "tokens=2,3 delims=. " %%i in ("%~t1") do set MyDateTime=%%j-%%i 
09.
REM Dir JJJJ-MM erstellen 
10.
if not exist "%~dp1%MyDateTime%" echo (Debug) md "%~dp1%MyDateTime%" 
11.
REM Datei dorthin verschieben 
12.
move "%~f1" "%~dp1%MyDateTime%\%~nx1" 
13.
goto :eof
Zudem brauche ich das ja ursprünglich, dass er den Dateinamen ändert und nicht einfach "nur" einen neuen mit dem Datum Ordner anlegt.

Also im Grunde aus d:123la.txt -> d:1234562005-09-12_12.11.txt wird. (Stunden und Minuten soll ich auch noch dazu bekommen)

Bitte helft mir!


Gruß
Selen
Mitglied: bastla
26.09.2007 um 18:09 Uhr
Hallo SelenSilence und willkommen im Forum!

Da Du keine näheren Angaben dazu machst, woher "456" kommen soll, nehme ich es einmal als konstant an:
01.
@echo off & setlocal 
02.
pushd %2 
03.
set "UV=456" 
04.
for /F "delims=" %%f in  ('dir /b /a-d %1 ^2^>nul') do if /i %%~sf NEQ %~s0 call :loop "%%f" 
05.
PopD 
06.
goto :eof 
07.
:loop 
08.
::Datei: %1 Dateidatum: %~t1 
09.
::MyDateTime im Format JJJJ-MM-TT_hh.mm 
10.
for /f "tokens=1-5 delims=.: " %%i in ("%~t1") do set MyDateTime=%%k-%%j-%%i_%%l.%%m 
11.
::Dir %UV% (="456") erstellen 
12.
if not exist "%~dp1%UV%" echo (Debug) md "%~dp1%UV%" 
13.
::Datei dorthin verschieben 
14.
echo (Debug) move "%~f1" "%~dp1%UV%\%MyDateTime%%~x1" 
15.
goto :eof
Die jeweiligen "echo (Debug) "-Anweisungen sorgen dafür, dass die auszuführenden Befehle nur angezeigt werden - sobald Du diese Anweisungen entfernst, wird wirklich bei Bedarf das Verzeichnis erstellt bzw werden Dateien verschoben und dabei umbenannt.

Zu letzterem Vorgang noch ein Hinweis: Sollte im Zielverzeichnis bereits eine Datei mit dem selben Namen vorhanden sein (auch, wenn erst während des Ablaufs dieses Batches dorthin gelangt), wird die bereits vorhandene Datei kommentarlos überschrieben.

Eine weitere Anmerkung: Unter der Annahme, dass "456" konstant ist, wäre das Erstellen dieses Unterverzeichnisses sinnvoller Weise bereits vor der Schleife angebracht, ich belasse es aber (vorläufig) in der Schleife. Falls das Verzeichnis "456" noch nicht vorhanden ist, wird (bei noch vorhandenem "echo (Debug) ") außerdem das Erstellen für jede einzelne Datei angezeigt (da ja der Vorgang nur simuliert wird und es daher weiterhin nicht existiert) - im "Ernstfall" würde es nur einmal erstellt werden.

Grüße
bastla
Bitte warten ..
Mitglied: SelenSilence
30.09.2007 um 15:02 Uhr
Hallo,

nun schaff ich es auch endlich dir zu schreiben. Erstmal danke für die nette Begrüßung
Also die .bat Dtei funktioniert SUPER, war genau das was ich noch brauchte.
Sehr sehr vielen Dank!!!!

Wünsche noch einen schonen Sonntag
Grüße
SelenSilence
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datum im Dateinamen sortierbar machen
gelöst Frage von CottonwoodBatch & Shell2 Kommentare

Hi, ich habe Dateien in einem Ordner, die im Format tt.mm.jj*.pdf vorliegen. Die möchte ich umbenennen. Um zu erkennen, ...

Monitoring

Nagios Plugin Datum in Dateiname abfragen

gelöst Frage von itazubiiMonitoring2 Kommentare

Hallo Leute, ich habe die Aufgabe in unserem Nagios System täglich eine Datei in einem Verzeichnis auf Existenz zu ...

Batch & Shell

(Batch) Datum Sortier-Mechanismus

gelöst Frage von clragonBatch & Shell19 Kommentare

Hallo zusammen. Ich bin schon etwas länger am Batch schreiben, und war schon oft uneingeloggt hier, und jetzt hab ...

Sonstige Systeme

Batch Dateinamen zerlegen

Frage von MummelSonstige Systeme5 Kommentare

Hallo Liebe Leute, hoffe mir kann einer helfen. Ich soll eine Batch schreiben, die eine abfrage macht. (Soll ein ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 15 StundenErkennung und -Abwehr1 Kommentar

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Vmware
VMware Updates gegen L1 Lücke
Information von sabines vor 22 StundenVmware

Für die Vmware Produkte vCenter Server, ESXi, Workstation und Fusion stehe Updates bereit um die L1 Lücke zu schließen. ...

Drucker und Scanner
HP-MF-Drucker per Fax angreifbsr
Information von Lochkartenstanzer vor 2 TagenDrucker und Scanner3 Kommentare

Endlich eine sinnvolle Verwendung für Faxe: Damit kann man offensichtlich den Drucker übernehmen. lks

Router & Routing

Das pfSense Buch ist jetzt für jeden kostenlos zu beziehen

Tipp von magicteddy vor 3 TagenRouter & Routing2 Kommentare

Bisher war das Buch nur für zahlende Unterstützer verfügbar, jetzt steht für Jedermann kostenlos zur Verfügung. Siehe auch The ...

Heiß diskutierte Inhalte
Microsoft
VPN Verbindung kann nicht aufgebaut werden
Frage von AlexderITlerMicrosoft35 Kommentare

Hallo, Ich möchte an einem unserer PCs in unserer Tochterfirma eine VPN zu unserem Netzwerk einrichten. Das schlägt allerdings ...

Windows Server
Domäne einsilbig mit nur einem Namen benannt - sowie AD und MX auf einer VM Kardinalsfehler?
Frage von TomTestWindows Server27 Kommentare

Hallo liebe Freunde gepflegter Probleme, seit kurzem soll ich eine Domäne verwalten die zuvor von einem IT-Dienstleister erstellt und ...

Datenbanken
MySQL Datenbank Import Aufgabe für mehrere .csv dateien
gelöst Frage von Marcel1989Datenbanken19 Kommentare

Hi, ich komm nicht weiter. Ich hab auf einem Windows Server 2012 r2 eine MariaDB/MySQL laufen. Nun soll diese ...

DNS
Gibt es eine Art DNS Proxy?
Frage von icepietDNS15 Kommentare

Hallo Nerds, Ich würde gerne folgendes machen: ts.domain.de:3389 soll auf 1.2.3.4:3389 auflösen ts2.domain.de:3389 soll auf 1.2.3.4:3390 auflösen Gibt es ...