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 BATCH - Dateiname und Erstelldatum auslesen

Mitglied: Memo66

Memo66 (Level 1) - Jetzt verbinden

03.12.2013 um 16:03 Uhr, 3147 Aufrufe, 5 Kommentare, 1 Danke

Hallo zusammen,

ich habe folgendes Problem, vielleicht kann mir einer ja weiterhelfen

Ich möchte die Dateinamen und das Erstellungsdatum aller Dateien im einem Verzeichnis in eine csv datei auslesen.

Mit
dir *Verzeichnis* /b /a-d > *Verzeichnis*

schaffe ich es alle Dateien aufzulisten und mit

for %%f in ("Verzeichnis") do echo %%f: %%~tf > *Verzeichnis

schaffe ich es das Datum und die Uhrzeit von EINER Datei auszulesen allerdings wird hier der Pfad mit ausgegeben was auch nicht sein soll.

Wie schaffe ich es diese beiden zu kombinieren??

Gruß Memo
Mitglied: colinardo
03.12.2013, aktualisiert um 17:24 Uhr
Hallo Memo,
01.
REM Codepage ändern damit Umlaute in Dateinamen korrekt übertragen werden 
02.
chcp 1252 
03.
 
04.
for %%a IN ("C:\Verzeichnis\*.*") do @echo "%%~nxa";"%%~ta">>CSVDatei.csv 
05.
 
06.
REM Codepage auf Defaultwert setzen 
07.
chcp 850
soll das Verzeichnis und alle Unterverzeichnisse rekursiv durchlaufen werden kannst du dies so machen:
for /R "C:\Verzeichnis" %%a IN (1) do @(for %%b in ("%%~dpa*") DO @(echo "%%~nxb";"%%~tb">>CSVDatei.csv))
Grüße Uwe
Bitte warten ..
Mitglied: Endoro
04.12.2013, aktualisiert um 06:41 Uhr
Hey, wenn du das Erstelldatum brauchst, sollte wmic verwendet werden, was leider recht langsam ist und bei XP Home erst installiert werden muss (ist ab XP Prof "serienmässig"). Andere hinreichend stabile Methoden hab ich noch nicht gefunden.
01.
@ECHO OFF &SETLOCAL 
02.
cd /d "%userprofile%" 
03.
for /f "tokens=2delims=:" %%a in ('chcp') do set /a mychcp=%%a 2>nul 
04.
chcp 1252 >nul 
05.
(for /f "delims=" %%a in ('dir /b /a-d') do call:process "%%~fa")>filelist.csv 
06.
chcp %mychcp% >nul 
07.
type filelist.csv 
08.
goto:eof 
09.
 
10.
:process 
11.
setlocal 
12.
set "fname=%~1" 
13.
for /f "tokens=2delims=," %%b in ('wmic path cim_datafile where name^="%fname:\=\\%" get creationdate /format:csv^|find "."') do set "crd=%%b" 
14.
echo("%~nx1","%crd:~6,2%.%crd:~4,2%.%crd:~0,4% %crd:~8,2%:%crd:~10,2%:%crd:~12,2%,%crd:~15,4%" 
15.
exit /b
lg.
Bitte warten ..
Mitglied: Memo66
04.12.2013, aktualisiert um 09:02 Uhr
Hallo Uwe,

vielen lieben Dank erstmal

Allerdings wird das Änderungsdatum ausgegeben und nicht das Erstellungsdatum. Ich könnte Wetten, dass das %%~ta geändert werden muss. Haben bisschen experimentiert aber dann wurde gar kein Datum ausgegeben.

@Endoro
das ganze muss ohne zusätzliche Installationen laufen. Aber danke dir auch, vielleicht brauch ich es an einer anderen Stelle

Beste Grüße
Memo
Bitte warten ..
Mitglied: colinardo
04.12.2013 um 09:05 Uhr
Zitat von Memo66:
Allerdings wird das Änderungsdatum ausgegeben und nicht das Erstellungsdatum. Ich könnte Wetten, dass das %%~ta
geändert werden muss.
Ah sorry das hatte ich übersehen, dann musst du es anders machen z.B. so wie Endoro schreibt, die verfügbaren Parameter dafür kannst du dir mit for /? anzeigen lassen:
Oder am besten gleich ganz zur Powershell wechseln, dann hast du dieses gehöddel nicht ...
Zusätzlich wurde die Ersetzung von Verweisen auf FOR-Variablen erweitert. 
Sie können jetzt folgende Syntax verwenden: 
 
    %~I         - Expandiert %I und entfernt alle umschließenden 
                   Anführungszeichen ("). 
    %~fI        - Expandiert %I zu einem vollständigen Dateinamen. 
    %~dI        - erstellt nur den Laufwerkbuchstaben von %I. 
    %~pI        - erstellt nur den Pfad von %I. 
    %~nI        - erstellt nur den Dateinamen von %I. 
    %~xI        - erstellt nur die Dateierweiterung von %I. 
    %~sI        - erstellter Pfad enthält nur kurze Dateinamen. 
    %~aI        - erstellt die Dateiattribute von %I. 
    %~tI        - erstellt Datum und Zeit von %I. 
    %~zI        - erstellt die Dateigröße von %I. 
    %~$PATH:I   - Durchsucht die in der PATH-Umgebungsvariablen 
                   angegebenen Verzeichnisse und expandiert die erste 
                   gefundene Datei %I zu dem vollständigen Dateinamen. 
                   Wenn der Name der Umgebungsvariablen nicht definiert 
                   ist oder diese Datei bei der Suche nicht gefunden wurde, 
                   wird dieser Parameter zu einer leeren Zeichenfolge 
                   expandiert. 
 
Diese Parameter können auch miteinander kombiniert werden: 
 
    %~dpI       - erstellt den Laufwerkbuchstaben und Pfad von %I. 
    %~nxI       - erstellt den Dateinamen und die Dateierweiterung von %I. 
    %~fsI       - Expandiert %I zu einem vollständigen Namen, der nur 
                   kurze Dateinamen enthält. 
    %~dp$PATH:I - Durchsucht die in der PATH-Umgebungsvariablen 
                   angegebenen Verzeichnisse nach %I und erstellt den 
                   Laufwerkbuchstaben und Pfad der ersten gefundenen Datei. 
    %~ftzaI     - Expandiert %I zu einer Zeile, die der Ausgabe des DIR- 
                   Befehls entspricht.
Grüße Uwe
Bitte warten ..
Mitglied: Memo66
04.12.2013 um 09:10 Uhr
Das bringt mich um einiges weiter.

Ich danke dir vielmals, du bist mein Held :P ;)

Gruß Memo
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

In Batch auf Erstelldatum einer Datei prüfen

gelöst Frage von AS-N00Batch & Shell5 Kommentare

Hallo, foolgendes Problem. Ich muss eine leer Datei "dpd.ini" in "d:\bw50" erstellen, wenn in einem Ordner "d:\bw50\dpd\export\" es keine ...

Batch & Shell

Batch: Dateiname abhängig vom Änderungsdatum auslesen

gelöst Frage von freaktastischBatch & Shell6 Kommentare

Servus zusammen, hab folgende Situation Oberordner: beinhaltet test.bat, Ordner1 und Ordner2 Ordner1, sowie Ordner2 beinhalten .docx Dateien. Mein Anliegen ...

Batch & Shell

Batch: Auslesen von Dateinamen aus Text und Kopieren dieser.

gelöst Frage von gumpo03Batch & Shell2 Kommentare

Hallo. Ich sitze seit ungefähr einer Stunde an einem Problem, dass ich gern endlich lösen würde: Ich habe eine ...

Batch & Shell

Erstelldatum vieler Dateien ändern (aus Dateinamen abgeleitet)

gelöst Frage von X-SpeziBatch & Shell11 Kommentare

Hallo, ich suche ein Batch womit ich das Erstellungsdatum nach den 1. Nummern (Datum) des Dateinamens verändern kann. Beispiel: ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 6 StundenHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 14 StundenRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 1 TagSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 1 TagWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
OpenVPN Client Fehlermeldungen
Frage von chris84LAN, WAN, Wireless16 Kommentare

Hallo Zusammen, wir nutzen seit kurzem einen neuen Router und den OpenVPN Client. Die VPN Verbindung klappt; allerdings kommen ...

Sonstige Systeme
Wie Normenkataloge im Unternehmen bereit stellen?
Frage von MuzzepuckelSonstige Systeme14 Kommentare

Hallo Kollegen, ich lese schon lange hier mit, nun mein ersrer Beitrag, bzw. Frage. :-) Wir benötigen für unsere ...

Sicherheit
Verbindliche Zustellung per E-Mail?
Frage von ahussainSicherheit14 Kommentare

Hallo allerseits, ein Kunde von mir nutzt intensiv Fax. Hauptgrund: zusammen mit einer Empfangsbestätigung ist eine verbindliche Zustellung gewährleistet. ...

SAN, NAS, DAS
Entscheidung SAN Dell oder HP
Frage von VincorSAN, NAS, DAS13 Kommentare

Hallo, wir wollen uns für unsere Hyper V Umgebung eine neue SAN Anschaffen. Es laufen 30 VM's darunter, DC; ...