![]() |
Neueste Datei per Batch herausfinden
Hallo,
kennt jemand eine Möglichkeit per Batch herauszufinden welches die jüngste Datei innerhalb eines Verzeichnises ist ? Danke |
Re: Neueste Datei per Batch herausfinden
Mit einer Option von "dir" kannst Du die Dateien dem Alter nach auflisten.
Die letzte Datei ist dann die neueste. [quote]dir /? Displays a list of files and subdirectories in a directory. DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N] [/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4] [drive:][path][filename] Specifies drive, directory, and/or files to list. /A Displays files with specified attributes. attributes D Directories R Read-only files H Hidden files A Files ready for archiving S System files - Prefix meaning not /B Uses bare format (no heading information or summary). /C Display the thousand separator in file sizes. This is the default. Use /-C to disable display of separator. /D Same as wide but files are list sorted by column. /L Uses lowercase. /N New long list format where filenames are on the far right. /O List by files in sorted order. sortorder N By name (alphabetic) S By size (smallest first) E By extension (alphabetic) D By date/time (oldest first) G Group directories first - Prefix to reverse order /P Pauses after each screenful of information.[/quote] Grüße Klaus |
Re: Neueste Datei per Batch herausfinden
Danke Klaus,
... und nur diese letzte würde ich gerne kopieren. Und das automatisiert als Batch. Grüsse Manuel |
Re: Neueste Datei per Batch herausfinden
Versuche es mal so:
Code:
Funktioniert bei Dateinamen ohne Leerzeichen.
for /F %i in ('dir /OD /B') do @set FILE=%i
echo %FILE% Grüße Klaus |
AW: Neueste Datei per Batch herausfinden
Hallo Klaus,
ich möchte aus einer alphabetisch geordneten Liste die neueste Datei auswählen und umbenennen. Da ich aber noch absoluter Batch Anfänger bin kann ich deinen Code nicht lesen. Könntest du den vielleicht nochmal allgemeiner gefasst posten? Das wäre super! Gruß, David |
AW: Neueste Datei per Batch herausfinden
An was genau scheiterst du? Du musst ja für deinen Fall nur nach etwas anderem sortieren. Die Parameter (also die Hilfe) wurde bereits gepostet.
|
AW: Neueste Datei per Batch herausfinden
Also ich würde den Job mit
![]() Die Möglichkeiten von Batchdateien (MS-DOS) sind doch viel zu begrenzt. Folgendes VB-Script zeigt die neueste Datei an:
Code:
Zum Testen einfach eine Datei mit der Endung .vbs erstellen und mit einem Editor obigen Code reinkopieren.
Dim fNewest
set oFolder=createobject("scripting.filesystemobject").getfolder("C:\") For Each aFile In oFolder.Files If fNewest = "" Then Set fNewest = aFile Else If fNewest.DateCreated < aFile.DateCreated Then Set fNewest = aFile End If End If Next MsgBox "Neueste Datei: " + fNewest.name Dann Doppelklicken zum Starten. |
AW: Neueste Datei per Batch herausfinden
Funktioniert VBS denn einfach so? Wird es aus sicherheitsgründen auf den meisten Systemen nicht deaktiviert? (zum Beispiel von XP-Antispy etc.)
|
AW: Neueste Datei per Batch herausfinden
Theoretisch müßte man auch %~tI dafür nutzen können.
Schau dir mal FOR-Hilfe an > DOS-Command
Delphi-Quellcode:
.
for /?
|
AW: Neueste Datei per Batch herausfinden
Hallo!
Danke für eure Hilfe. Hier nochmal mein genaues Problem: Ich habe eine Batch Datei welche mir mehrere Dateien von einem ftp-Server auf meinen lokalen PC kopiert. Anschließend werden die Dateien alphabetisch sortiert (Dateien sind fortlaufend nummeriert). Jetzt möchte ich die erste Datei auswählen und umbenennen nach aktuellem Datum und Uhrzeit. Mit
Code:
hole ich die Dateien. Hier muss ich leider für jede einzelne Datei
mget *.jdf
Code:
eintippen, kann ich da nicht "ja zu allen" sagen?
y
So sortiere ich die Dateien und benenne sie um:
Code:
Wie kann ich hier die neueste Datei wählen?
dir *.jdf /o:-n && echo DATEIEN SORTIERT
ren [COLOR="Red"]NEUESTE DATEI[/COLOR] "%date:~0,2%-%date:~3,2%-%date:~6,4%_%time:~0,2%-%time:~3,2%-%time:~6,2%".jdf && echo DATEI UMBENANNT @shmia: Danke für das Script. Es hat ganz unverändert noch nicht funktioniert. Die MsgBox gibt "Dokumente" aus, obwohl keine Datei so heisst. Ich würde das Problem gerne mit einer Batchdatei lösen, da ich bisher auch alles darüber gelöst habe. @himitsu: Ich hab mir die Hilfe angeschaut, bin daraus aber nicht schlau geworden. Was bedeutet
Code:
?
~tI
Gruß David |
AW: Neueste Datei per Batch herausfinden
Hallo Leute
Der untenstehende Code funktioniert tiptop. Nun möchte ich aber nur die neuste Datei mit der endung .bat suchen und diese dann auf einen Stick oder Platte speichern. Aber ich habe absolut keine Ahnugn wie das gehen soll. Ich hoffe es kann mir jemand helfen. Dim fNewest set oFolder=createobject("scripting.filesystemobject") .getfolder("C:\ComaFiles2Backup") For Each aFile In oFolder.Files If fNewest = "" Then Set fNewest = aFile Else If fNewest.DateCreated < aFile.DateCreated Then Set fNewest = aFile End If End If Next MsgBox "Neueste Datei: " + fNewest.name Gruss Firzen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz