Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Verzeichnisnamen vergleichen?!

Frage Entwicklung Batch & Shell

Mitglied: LimitsUnkn0wn

LimitsUnkn0wn (Level 1) - Jetzt verbinden

05.12.2007, aktualisiert 18:12 Uhr, 3627 Aufrufe, 4 Kommentare

Wie kann man mit Batch das Verzeichnis mit der höchsten Zahl auswählen?!

Hallo Community,
Ich habe momentan ein Problem mit einem kleinen Batch-Script.
Ich möchte damit ein Verzeichnis auwählen und eine Datei daraus kopieren.

Das Problem: Die Ordner sind nummeriert (Bilder1, Bilder2 , Bilder3 , ... , Bilder53)
und nun soll die batchdatei, den Ordner auswählen der die höchste zahl hat und die Datei Bild001.jpg daraus kopieren.

Natürlich ginge das auch so:

@echo off
cd C:\Pics\Bilder1
copy Bild001.jpg C:\
cd..
if exist Bilder2 goto Bilder2
:Bilder2
cd Bilder2
xcopy /Y Bild001.jpg C:\
cd..
if exist Bilder3 goto Bilder3
:Bilder3
cd Bilder3
xcopy /Y Bild001.jpg C:\
cd..
if exist Bilder4 goto Bilder4
:Bilder4
cd Bilder4
xcopy /Y Bild001.jpg C:\
...

Aber das ist erstens nicht schön :D und zweitens dauert das bei einer hohen Anzahl an Verzeichnissen auch relativ lange.

Deshalb wollte ich mal fragn ob man direkt prüfen kann, welches verzeichnis die höchste zahl dahinter hat und nur aus dem die datei kopieren.
Vielleicht kann man auch etwas über das Erstellungsdatum machen, denn Bild1 ist das älteste und das mit der höchstesn zahl das neuete, nur habe ich keine Ahnung, wie man die Erstellungsdaten vergleicht.

Ich hoffe ihr könnt mir helfen.

Mfg LimitsUnkn0wn
Mitglied: Biber
05.12.2007 um 16:46 Uhr
Moin LimitsUnknown,

willkommen im Forum.
Es sind in der Tat verschiedene Lösungsstrategien für Deine Anforderung Erfolg versprechend.
Genauer gesagt (Anzahl BatchschreiberInnen hoch 2)-1.

Ich würde als die einfachste die Ermittlung des "neuesten" Verzeichnisses wählen.
Test am CMD-Prompt
01.
For /f %i in ('dir /ad /o:d /b c:\pics\Bilder*') do @set "newestDir=%i"
Danach steht in der Variablen %NewestDir% das neueste Verzeichnis. (Anzeigen mit "Set new")

Grüße
Biber
Bitte warten ..
Mitglied: LimitsUnkn0wn
05.12.2007 um 17:19 Uhr
Danke, Danke
Funtkioniert super.
Aber falls jemand eine Lösung kennt, wie man die höchste Zahl ermittelt, wäre ich auch noch aus reinem Interesse daran intressiert ;)
Bitte warten ..
Mitglied: Biber
05.12.2007 um 17:33 Uhr
Moin LimitUnkn0wn,

01.
For  /L %i in (1,1,123) do @if exist c:\pics\bilder%i do @set "highestDir=bilder%i"
Kannst Du noch so einen kleinen grünen Haken setzen bitte?

Grüße
Biber
Bitte warten ..
Mitglied: LimitsUnkn0wn
05.12.2007 um 18:12 Uhr
Hab ich gemacht
Und nochmal Danke
Bitte warten ..
Ähnliche Inhalte
Linux
gelöst Vergleich zwischen Distributionen. Mögliche Kriterien? (18)

Frage von hansleitner zum Thema Linux ...

Entwicklung
Vergleichen und entfernen (2)

Frage von Florian456 zum Thema Entwicklung ...

Grafikkarten & Monitore
Grafikkarten Vergleich & Grafikkarten Rangliste

Link von joemix zum Thema Grafikkarten & Monitore ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Infineon TPMs unsicher!

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Firewall

PfSense Repository für Version 2.3.x

(2)

Information von Dobby zum Thema Firewall ...

LAN, WAN, Wireless

WPA-2 hat erste Risse: KRACK

(5)

Information von the-buccaneer zum Thema LAN, WAN, Wireless ...

Hardware

GPD Pocket: Winziger Laptop für Wenig Tipper

(1)

Information von pelzfrucht zum Thema Hardware ...

Heiß diskutierte Inhalte
Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (20)

Frage von sunics zum Thema Hosting & Housing ...

Windows 7
gelöst Windows 7 Anmeldedomäne festlegen (13)

Frage von flotaut zum Thema Windows 7 ...