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

Ordner nach Datum sortiert finden

Frage Entwicklung Batch & Shell

Mitglied: maddus

maddus (Level 1) - Jetzt verbinden

29.03.2011 um 14:42 Uhr, 3714 Aufrufe, 14 Kommentare

Hallo,

dank des Forum konnte ich schon meine Dateien per Batch zippen und in einen Ordner packen. Die Ordner haben folgende Struktur JJJJ-MM-TT. Jetzt möchte ich per Batch den Namen des aktuellsten Ordners in eine Variable speichern.

Bsp.:
2011-03-16
2011-03-25
2011-03-27
2011-03-28

Die Batchfunktion soll mir nun 2011-03-28 zurückgeben.

Wie kann man sowas realisieren? Gerne auch Denkanstöße wonach ich suchen könnte, um selber die Lösung zu finden. Ein Dankeschön schon mal im Voraus...

MfG
maddus
Mitglied: BigWim
29.03.2011 um 15:06 Uhr
Moin maddus,

mein Vorschlag wäre mit einer For-Schleife einen Dir auszuführen und je nach Sortierung ist der aktuellste Ordner entweder der erste oder letzte Wert ....

Grüße
Markus
Bitte warten ..
Mitglied: Skyemugen
29.03.2011 um 15:09 Uhr
Aloha,

auf die Schnelle würde ich per dir /b /ad /oOption %Pfad% eine temporäre Datei erstellen, wo die Ergebniss reingeschrieben werden und per for-Schleife die letzte Zeile auslesen (hab da was rumliegen ;D aber du möchtest ja gerne selbst die Lösung finden => gut so).
(ginge bestimmt auch anders aber das ging mir jetzt am Schnellsten für mich ^.^)

greetz André

edit: Option hinzugefügt (n bevorzugt)
Bitte warten ..
Mitglied: bastla
29.03.2011 um 15:14 Uhr
@Skyemugen
Bitte keine "temporäre Datei" (und Deinem "/o" fehlt das "d") ...

@BigWim
... wobei es die Verwendung des letzten Wertes einfacher macht ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
29.03.2011 um 15:22 Uhr
Aloha bastla!

da fehlt nicht unbedingt das /d, man könnte auch /n nehmen, daher ließ ich es weg :P darf der TE entscheiden.
Keine temp-Datei, ne? Dachte ich mir schon, nur schnell per useback delims txt-Datei auslesen lief bei mir, direkt den letzten Wert aus'm dir in der for-Schleife auszulesen will mir heute nicht gelingen *grml*

greetz André
Bitte warten ..
Mitglied: BigWim
29.03.2011 um 15:26 Uhr
@bastla
... wobei es die Verwendung des letzten Wertes einfacher macht ...
Tja, ich konnte mich nicht entscheiden, was sinnvoller ist.

  • Bei Verwendung des letzten Wertes muß die For-Schleife ja durchlaufen.
  • Bei Verwendung des ersten Wertes benötige ich eine Abbruchbedingung.

Ich hätte das jetzt in Abhängigkeit der Rückgabewerte von Dir entschieden ...

Grüße
Markus
Bitte warten ..
Mitglied: bastla
29.03.2011 um 15:40 Uhr
@BigWim
"for"-Schleifen lasse ich eigentlich immer bis zum Ende laufen, deswegen finde ich den letzten Wert besser ...

@Skyemugen
Mit den beiden Möglichkeiten hast Du natürlich recht (wobei ich eigentlich auch - aufgrund der vernünftigen Schreibweise JJJJ-MM-TT - zu "n" raten würde); aber es sah irgendwie "unfertig" aus ...

Da die Ordnernamen ja offensichtlich nur aus der Datumsangabe bestehen, brauchst Du weder "delims" nocht "usebackq" (und noch nicht einmal "tokens") - allerdings würde ich (zur Sicherheit) dem %Pfad% noch eine Maske der Art "20??-??-*" mit auf den Weg geben ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
29.03.2011 um 15:44 Uhr
Aloha bastla!

ja, danke, habe ich eben auch gemerkt, dass ich den Vorkäse weglassen kann und es dann natürlich auch so funktioniert mit dir in der Schleife.
Die Maske für den Fall, dass noch andere Ordner enthalten sein könnten? tbh: da ich kein Theater mag, wäre ich mir nicht ganz sicher, wie das Maskieren in diesem Fall geschehen sollte

greetz André
Bitte warten ..
Mitglied: bastla
29.03.2011 um 15:50 Uhr
Hallo Skyemugen!

Mit der Schreibweise
dir /b /ad /on "%Pfad%\20??-??-*"
sollte das bis inklusive 2099 (ganz ohne Theater) funktionieren ...

Grüße
bastla

[Edit]
So ein "/a-d" hätte das Ganze aber spannender gemacht ...
Na gut, dann ändere ich es eben wieder.
[/Edit]
Bitte warten ..
Mitglied: BigWim
29.03.2011 um 15:54 Uhr
Hallo Bastla,

"for"-Schleifen lasse ich eigentlich immer bis zum Ende laufen, deswegen finde ich den letzten Wert besser ...
Dann vertraue ich auf Deine Erfahrungswerte und werde das beherzigen. Die Wahrscheinlichkeit (in diesem Fall) auf >21.900 Ordner zu treffen, ist ja wirklich nicht riesig ....

Grüße
Markus
Bitte warten ..
Mitglied: Skyemugen
29.03.2011 um 15:57 Uhr
Aloha bastla!

hm, interesting, warum bin ich bisher noch nie über ein solches Maskieren gestoßen ... hm
Aber das /a-d lassen wir doch lieber bei /ad sonst find' der nix ^.^

So, der TE hat mich nun mehrfach schon pmed, dass ihn die Lösung interessiert ...
Geben wir ihm noch ein wenig Zeit, die einfache Sache mit unseren Kommentaren selbst zu schaffen schlimm genug, dass wir schon wieder so viel dazu schreiben *lach*

greetz André
Bitte warten ..
Mitglied: maddus
29.03.2011 um 15:58 Uhr
Erstmal ein großes Dankeschön an alle. Hier nun meine "Lösung" bei Fehlern bitte gerne berichtigen.

01.
for /f %%i in ('dir /b /ad /od D:\Sicherung\20??-??-*') do ( 
02.
set variable=%%i 
03.
04.
echo %variable%
Somit bekomme ich den aktuellsten Ordner angezeigt.
Bitte warten ..
Mitglied: Skyemugen
29.03.2011 um 16:02 Uhr
Aloha maddus!

zwei Sachen:

a) da du nur einmalig die Variable setzt, kannst du auch alles ohne Klammern, in einer Zeile schreiben (was das do in der for-Schleife betrifft
b) wie wir angedeutet haben, wäre u.U. die Option /on besser, nimm mal an, du erstellst nachträglich einen 2011-02-20-Ordner, dann wäre der dein Ergebnis

ansonsten, schön gemacht ;)

greetz André

edit: fehlt eigentlich nur noch das grüne Häkchen am Thread und dann hab' ich auch gleich Feierabend *grins*
Bitte warten ..
Mitglied: bastla
29.03.2011 um 16:06 Uhr
... und noch ein letztes Detail: Die Variable enthält (da "dir /b" ohne "/s" immer nur Datei-/Ordner-Namen liefert) natürlich keinen Pfad zum entsprechenden Ordner, daher ggf:
set variable=D:\Sicherung\%%i
oder vorweg mit
pushd D:\Sicherung
in den "Eltern"-Ordner wechseln (und nach der Verarbeitung mit "popd" zurück) ...

Grüße
bastla
Bitte warten ..
Mitglied: maddus
29.03.2011 um 16:09 Uhr
Danke für die letzten beiden Kommentare und jetzt gibt es ein Häckchen für den Thread

MfG
maddus
Bitte warten ..
Ähnliche Inhalte
Windows 8
Ordner werden nicht mit korrektem Datum angezeigt
Frage von geTr0ffEnWindows 87 Kommentare

Hallöchen, ich habe folgendes Problem. Nach einem Umzug wurden Dateien/Ordner von einem alten Laufwerk auf einen neuen PC kopiert. ...

Batch & Shell
Ordner Umbenennen +heutiges Datum
gelöst Frage von ahsendenBatch & Shell12 Kommentare

Hallo zusammen, Ich muss für eine tagliche Außerhaussicherrung auf Externe Festplatten immer folgendes manuell ausführen: Löschen des Ordners "Backup-extern_20170201" ...

Batch & Shell
(Batch): "Find" Befehl nach aktuellem Datum filtern
gelöst Frage von unauthorized-userBatch & Shell3 Kommentare

Guten Morgen an alle, für die Dokumentation der Server-Updates habe ich eine winzige *.Bat-Datei geschrieben, welche mir alle installierten ...

Netzwerkmanagement
Wie sortiert und archiviert Ihr Statusmails?
Frage von StefanKittelNetzwerkmanagement6 Kommentare

Hallo, wir haben hier eine EMail-Adresse (Exchange-Konto) wo die ganzen Status-Mails der Kunden-IT auflaufen. Also Datensicherung, USV, IPMI, Monitoring, ...

Neue Wissensbeiträge
Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 1 StundeMicrosoft Office2 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Erkennung und -Abwehr

Sicherheitslücke Spectre und Meltdown: Status prüfen

Anleitung von Frank vor 7 StundenErkennung und -Abwehr2 Kommentare

Nach all den Updates der letzten Woche sollte man unbedingt auch den Status prüfen, ob die Sicherheitslücken Spectre, Meltdown ...

Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 1 TagMicrosoft Office9 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 1 TagDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Drucker und Scanner
Gesucht DIN A3 Drucker
Frage von NebellichtDrucker und Scanner15 Kommentare

Hallo, ich möchte einen neuen DIN A3 Drucker kaufen. Um ab und zu, ca. 1 mal die Woche Farbausdrucke ...

iOS
Einladung vom iphone kalender
Frage von jensgebkeniOS15 Kommentare

Hallo Gemeinschaft, folgendes Problem - immer wenn ich von meinem Iphone einen Termin einztrage und diesem Termin Teilnehmer zuweise, ...

Batch & Shell
Dateien verschieben mit batch
gelöst Frage von michi-ffmBatch & Shell13 Kommentare

Hallo Zusammen hat jemand evtl eine Idee? Zunächst hier das Skript: Leider werden keine UNC-Pfade unterstüzt, kann mir jemand ...