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 Dateidatum mit Batch-Datei auslesen

Mitglied: dynastie

dynastie (Level 1) - Jetzt verbinden

06.07.2006, aktualisiert 04.08.2006, 34590 Aufrufe, 1 Kommentar

Hallo,

ich möchte gerne mittels Batch das Dateidatum, Zeit, evtl. Version auslesen. Ich habe im Internet eine Code gefunden, der das im Prinzip macht, aber nicht ganz so wie ich eshaben möchte.

@echo off
dir *.txt > file.txt
for /F "tokens=1,2,3 delims=. " %%i in ('findstr txt file.txt') do call :SUB1 %%i %%j %%k
REM goto ENDE
:SUB1
set TEMPVAR=%3
set TEMPVAR=%TEMPVAR:~2,2%
set TEMPVAR=%TEMPVAR%%2%1
REM echo TEMPVAR

Ausgabe in file.txt

" Datentr"ger in Laufwerk C: ist System
Volumeseriennummer: D431-E5AB

Verzeichnis von C:\Dokumente und Einstellungen\tg\Desktop

07.07.2006 09:58 0 file.txt
07.07.2006 09:54 22.184 Test1.txt
07.07.2006 09:53 1.035 Test2.txt
3 Datei(en) 23.219 Bytes
0 Verzeichnis(se), 44.438.290.432 Bytes frei"

Ich möchte eigentlich nur diese Zeile haben

"07.07.2006 09:54 22.184 Test1.txt"

Kann mir jemand erklären wie es sich mit den Umgebungsvariablen "TEMPVAR=%3" , "%TEMPVAR:~2,2%", "%TEMPVAR%%2%1"verhält oder weiß jemand wie ich nur das Datum ausgeben kann?


Danke.

Gruß

Tatjana
Mitglied: Biber
04.08.2006 um 18:33 Uhr
Moin dynastie,

habe Deinen Beitrag erst heute entdeckt. Sorry.

Zu diesem gefundenen Schnipsel und Deinen Fragen:

01.
@echo off
02.
dir *.txt > file.txt
03.
for /F "tokens=1,2,3 delims=. " %%i in ('findstr txt file.txt') do call :SUB1 %%i %%j %%k
04.
REM goto ENDE
05.
:SUB1
06.
set TEMPVAR=%3
07.
set TEMPVAR=%TEMPVAR:~2,2%
08.
set TEMPVAR=%TEMPVAR%%2%1
09.
REM echo TEMPVAR
Was der Verfasser/die Verfasserin dieses Fragments vermutlich versucht ist, aus der DIR-Ausgabe nur das Datum auszulesen/auszugeben, das ja am Anfang jeder Zeile in der Form TT.MM.JJJJ steht

Wenn wir das Problem mal (gedanklich) am CMD-Prompt durchspielen, entwickelt sich Lösung fast von allein.
Wären wir jetzt am CMD-Prompt...
01.
> dir *.txt
02.
Datentrager in Laufwerk C: ist System
03.
Volumeseriennummer: D431-E5AB
04.

05.
Verzeichnis von C:\Dokumente und Einstellungen\tg\Desktop
06.

07.
07.07.2006 09:58 0 file.txt
08.
07.07.2006 09:54 22.184 Test1.txt
09.
07.07.2006 09:53 1.035 Test2.txt
10.
3 Datei(en) 23.219 Bytes
11.
0 Verzeichnis(se), 44.438.290.432 Bytes frei"
12.

13.
####### Aber Du willst nur die Zeile mit "Test1.txt", also
14.
dir *.txt|findstr /i "Test.txt"
15.
07.07.2006 09:54 22.184 Test1.txt
16.

17.
####### Von dieser Zeile nur die ersten drei Token/Bestandteile, 
18.
####### wenn denn die Token-Trennzeichen ein Punkt "." und ein Leerzeichen sind.
19.

20.
for /f "delims=. " %i in ('dir *.txt^|findstr /i "Test.txt") do @echo %i %j %k
21.
07 07 2006 
22.
####### Diese drei Variablen %i %j %k werden in dem beispiel oben an eine ":sub"-Unterroutine übergeben.
23.
####### Dort kommen sie an als IN-Parameter %1 (07), %2 (07) und %3 (2006)
24.
####### In %tempVar% wird demnach "2006" gespeichert. mach ich mal von Hand.
25.
>set tempvar=2006
26.
###### jetzt (die Spannung steigt)...was ist wohl %TEMPVAR:~2,2%?? Schaun wir mal
27.
>echo set TEMPVAR=%TEMPVAR:~2,2%
28.
set TEMPVAR=06
Also, diese Anweisung hat offensichtlich von dem "2006" ab Zeichen 2 in der Länge 2 Zeichen von der Variable %tempvar% übernommen.

Letzte Frage: set TEMPVAR=%TEMPVAR%%2%1 ??
----> würde dann diesen eben ermittelten Wert "06" plus Parameter 1 plus Parameter 2 zusammenfassen zu
060707

In Bereich "Batch und Shell" findest Du auch ein kleines Tutorial zu dem Thema "Umgang mit Datums- und Zeitvariablen im Batch"

HTH Biber
P.S. Ich verschiebe die Frage mal von "Entwicklung" nach "Batch & Shell".
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Robocopy Zielverzeichnis mit Dateidatum versehen

Frage von kubjo-jkBatch & Shell3 Kommentare

Hallo Leute, ich würde gerne Bilder einer Speicherkarte via robocopy auf eine Festplatte kopieren lassen und die Bilder gleich ...

Batch & Shell

BATCH ini Datei Datei auslesen

gelöst Frage von Juergen42Batch & Shell2 Kommentare

Hallo zusammen, ich möchte eine ini Datei auslesen mit folgenden Aufbau INHALT DER INI ID=30 NAME="test1" PFAD="K:\Kontoauszug\Test1\*.pdf" PFAD_S="K:\Kontoauszug\Test1\Sicherung\" ID=28 ...

Batch & Shell

Batch Datei Ordnerüberwachung

Frage von Phant0xBatch & Shell1 Kommentar

Hallo zusammen, könntet ihr mir helfen eine Batch Datei zu schreiben, die einen bestimmten Ordner kontrolliert, ob sich Dateien ...

Batch & Shell

Batch Datei - Hilfe!

gelöst Frage von freshman2017Batch & Shell4 Kommentare

Einen wunderschönen "Wahl"- Sonntag, ich habe wieder eine Frage; wer kann mir helfen? Ich habe eine Ausgangsdatei (.txt) mit ...

Neue Wissensbeiträge
Windows 10
Die tickende DSGVO-Zeitbombe von Microsoft
Information von Frank vor 6 StundenWindows 101 Kommentar

Hier ein guter Beitrag von Golem.de zum Thema DSGVO und das Windows 10 aktuell nicht DSGVO konform ist! Das ...

Microsoft Office

Gebrandete OEM-Version von Office 2003 auf Nachfolgerechner installieren

Tipp von Lochkartenstanzer vor 8 StundenMicrosoft Office

Hallo Kollegen, gerade mal wieder ein Kundensystem mit Widows 10 in den Fingern gehabt, bei dem der Besitzer sein ...

Windows Server

Ein Feature, welches einem das Arbeiten mit Windows-2019-Coreservern erleichtern kann

Information von DerWoWusste vor 9 StundenWindows Server2 Kommentare

Man kann mittels Kommando nun folgendes auf Server 2019 in der Coreversion v1809 freischalten, so dass man es lokal ...

Windows 10
MS möchte offenbar lokale Konten abschaffen
Information von UweGri vor 1 TagWindows 1011 Kommentare

Guten Tag Admins, ab und an lese ich bei Dr.-Windows Bei dieser Meldung dachte ich, wird MS jetzt offen ...

Heiß diskutierte Inhalte
Erkennung und -Abwehr
MS-Hotline-Telefonterror
Frage von HenereErkennung und -Abwehr22 Kommentare

Servus zusammen, seit ca 3 Wochen haben wir immer wieder Anrufe von unbekannten Nummern, teils aus dem Ausland. Nach ...

Batch & Shell
Active Directory Picker - Get-ADGroup kann nicht in den Typ konvertiert werden
Frage von dispatcherBatch & Shell17 Kommentare

Mahlzeit zusammen, Im folgenden Skript erhalte ich immer die Meldung: Get-ADGroup : "System.Object " kann nicht in den Typ "Microsoft.ActiveDirectory.Management.ADGroup" ...

Batch & Shell
Last Logon Datum per Powershell abrufen
gelöst Frage von DerWoWussteBatch & Shell12 Kommentare

Moin Kollegen. Wer ist vor 10 schon so fit, mir Folgendes zu erklären: Das zum Titel passende Skript ist ...

Windows 10
Windows 10 mit kaputtem .Net 4.8
Frage von krischeuWindows 1012 Kommentare

Hi, ich habe mit dem Programm ADDISON ein Stabilitätsproblem. Es stürzt regelmäßig während des Arbeitens ab. In der Ereignisanzeige ...