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 Datum auslesen mit 2 Schleifen funktioniert nicht

Mitglied: bufferm44

bufferm44 (Level 1) - Jetzt verbinden

09.03.2008, aktualisiert 12.03.2008, 3469 Aufrufe, 4 Kommentare

Hallo zusammen!

mit folgender Batch lese ich das Datum (last modified) aus einer Datei aus:

01.
for /f "delims=" %%i in ('dir n:\input\1fertig.jpg /s /b /a-d') do set file_date=%%~ti 
02.
echo %file_date%
Nun würde ich das gerne für die Dateien 1fertig.jpg ... 20fertig.jpg machen

Aber:

01.
for /L %%i IN (1 1 20) do ( 
02.
for /f "delims=" %%i in ('dir n:\input\%%ifertig.jpg /s /b /a-d') do set file_date=%%~ti 
03.
echo %file_date% 
04.
)
zaubert nur Unsinn auf den Bildschirm.

Wo ist mein Denkfehler?

Vielen Dank schon mal für Eure Hilfe
Mitglied: bastla
09.03.2008 um 16:31 Uhr
Hallo bufferm44!

"Denkfehler" würde ich es nicht nennen, eher "mangelnde Berücksichtigung der Besonderheiten der Variablenauflösung in for-Schleifen" ...

Gemeint ist damit das Stichwort "delayedexpansion" (dazu gibt es eine Menge Kommentare hier im Forum).

Eine Lösung könnte so aussehen:
01.
@echo off & setlocal enabledelayedexpansion 
02.
for /L %%i IN (1 1 20) do ( 
03.
    for /f "delims=" %%i in ('dir n:\input\%%ifertig.jpg /s /b /a-d') do set file_date=%%~ti 
04.
    echo !file_date! 
05.
)
Alternativ dazu mit Verwendung eines Unterprogrammes:
01.
@echo off & setlocal 
02.
for /L %%i IN (1 1 20) do ( 
03.
    for /f "delims=" %%i in ('dir n:\input\%%ifertig.jpg /s /b /a-d') do call :ProcessFile "%%i" 
04.
05.
goto :eof 
06.
 
07.
:ProcessFile 
08.
set "file_date=%~t1" 
09.
echo %~1: %file_date% 
10.
goto :eof
Ich finde es sinnvoll, den gesamten Dateipfad an das Unterprogramm zu übergeben und erst dort das Datum auszulesen - so kann auch noch auf die Datei selbst (als %1 - siehe "echo"-Zeile) zugegriffen werden.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
11.03.2008 um 16:03 Uhr
Moin bufferm44,

Nachfrage: Kann ein Haken dran und wer von uns beiden soll ihn setzen?

Grüße
Biber
Bitte warten ..
Mitglied: bufferm44
11.03.2008 um 22:38 Uhr
Moin!

Sorry für die späte Antwort, bin gerade auf Reise. Kann es leider erst die Tage testen aber ich denke mal wenn das ein bekanntes Phänomen ist dann ist es erledigt.

Vielen Dank auf jeden Fall noch mal dafür

Tobi
Bitte warten ..
Mitglied: Biber
12.03.2008 um 08:58 Uhr
Moin bufferm44,

danke für die Rückmeldung.
aber ich denke mal wenn das ein bekanntes Phänomen ist dann ist es erledigt...
Hmm, sagen wir so: regelmäßigen BesucherInnen dieses Forums ist es schon vertraut.
Wie ich allerdings manchmal in anderen Kommentaren lese, ist Google bezüglich dieser Details noch relativ ahnungslos.

...na ja, WTF is' schon Google...^

Ich setze den grünen Haken mal. Sollten wider Erwarten noch Nach-Fragen auftauchen, scheue Dich nicht....

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Dateinamen auslesen und in einer Schleife benutzen

gelöst Frage von TeholBeddictBatch & Shell12 Kommentare

Hallo Experten, ich kämpfe derzeit mit folgender Aufgabenstellung, welche ich per Batchskript lösen möchte: In einem Ordner sind 1 ...

Batch & Shell

Powershell If-Schleife funktioniert nicht

gelöst Frage von windelterroristBatch & Shell5 Kommentare

Hallo Admins Arbeite gerade an einem kleinen Script funktioniert aber nicht so, wie ich mir das vorstelle Mein Code: ...

Batch & Shell

Datum in Datei speichern und wieder auslesen

gelöst Frage von AndroxinBatch & Shell3 Kommentare

Moinsen, ich spiele gerade ein wenig mit der Powershell und Zeitstempeln rum: Zeitstempel mit Get-Date erstellen, als String in ...

Batch & Shell

Bestimmtes Datum von einem file auslesen - Linux

gelöst Frage von lapvikaBatch & Shell9 Kommentare

Hallo zusammen, ich möchte mir in Linux aus der /var/log/messages Dateiinhalte der letzten 24 Stunden anzeigen lassen, alles was ...

Neue Wissensbeiträge
Backup

2016 - Restore mit WBAdmin - iSCSI Device als Sicherungsziel

Erfahrungsbericht von Henere vor 1 TagBackup1 Kommentar

Servus zusammen, was mich eben einige graue Haare gekostet hat Server 2016. Ich habe meinem Server eine weitere M2 ...

Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 4 TagenHumor (lol)9 Kommentare

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 4 TagenExchange Server9 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

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

Information von Frank vor 5 TagenErkennung und -Abwehr3 Kommentare

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

Heiß diskutierte Inhalte
E-Mail
Deutsche e-Mail Adresse auf iPhone in Katar. Nur Probleme
gelöst Frage von vanTastE-Mail32 Kommentare

Moin, ich habe hier in Deutschland auf einem Exchange 2013 eine e-Mail Adresse (name@domain.de) für einen Kollegen in Katar ...

Windows Server
Server verliert Dateien und Ordner
gelöst Frage von routeserverWindows Server15 Kommentare

Hallo Freunde, ich habe hier ein Problem, das mich an meine Grenzen treibt und ich würde gerne wissen, ob ...

Windows Tools
User Self Service und Client Management
Frage von OrkansonWindows Tools13 Kommentare

Hallo zusammen, ich hab ein paar verschiedene Fragen: 1. Was benutzt ihr um Software im Unternehmen zu verteilen? 2. ...

Windows Server
Domäne beitreten nicht möglich, unter VMWare windows Server 2016 Core
Frage von AmanuelWindows Server12 Kommentare

Ich habe auf meinem Mac unter VMWare Windows Server 2016 Core und Windows Server 2016 Desktopversion installiert. Beide Systeme ...