Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Verzeichnisinhalt ausgeben per Batch (2 dir- Abfragen)

Frage Entwicklung Batch & Shell

Mitglied: efde

efde (Level 1) - Jetzt verbinden

08.08.2005, aktualisiert 15:58 Uhr, 17663 Aufrufe, 3 Kommentare

Hallo zusammen,
ich habe ein Problem bei einer Batchabfrage, unzwar möchte ich mit dem Befehl

dir | find /i "07.2005"

alle Dateien eines Ordners auflisten die im Juli 2005 erstellt wurden,
soweit sogut nun möchte ich diese herausgefilterten Dateien am besten mit dem befehl dir /b also quasi ohne datum in einem log Datei schreiben (z.b. >juli.log).

Doch ich weiss nicht wie ich die zuvor mit dem dir Befehl sortierten Dateien, jetzt mit dem dir /b Befehl in eine Datei ausgeben kann?

Bei dem Befehl:

dir / B | find /i "07.2005" >juli.log

werden nicht nur die Dateien vom Juli aufgelistet!

Wcihtig ist halt, das alle im Juli erstellten Dateien in dieser Logdatei nur mit dem Namen auftauchen.


Ich habe keine Ahnung wie ich das lösen könnte, habe bereits die Suchfunktion "gequält", aber nichts passendes gefunden.

Kann mir wer helfen.

MfG Heiner
Mitglied: Biber
08.08.2005 um 01:09 Uhr
Moin, Heiner,
das Gerüst wäre:
01.
for /F "tokens=4" %a in ('dir ^|find /V "&ltDIR&gt"^|find "07.2005"') do echo %a >>Juli2005.log    
... vom CMD-Prompt aus,
aber wenn Du Dir das ohnehin nicht jedesmal von einem Zettel abtippen willst, dann mach das in einem Mini-Batch etwas flexibler:
01.
::----LogMirWatt.bat 
02.
@echo off 
03.
set /P monat="Welches Monat (als 01 bis 12 eingeben)? " 
04.
set /p jahr="Welches Jahr (YYYY) ? " 
05.
for /F "tokens=4" %%a in ('dir /A-D ^|find "%Monat%.%jahr%"') do echo %%a >>%jahr%-%monat%.log
:: [edit] Um die Ecke gedacht... die alte Variante ist sooo umständlich nicht nötig
::for /F "tokens=4" %%a in ('dir ^|find /V "&ltDIR&gt"^|find "%Monat%.%jahr%"') do echo %%a >>%jahr%-%monat%.log
::[/edit]
----ende LogMirWatt.bat

Die Logdateien heißen dann "2005-07.log" etc, aber damit kannst Du bestimmt leben.
Habe jetzt Schnickschnack wie alphabetische Sortierung, Unterverzeichnisse abfackeln und Logdatei löschen weggelassen, nimm es als Skizze.
Wenn Du alle Dateien eines Laufwerks aus dem (z.B.) Juli auflisten willst, würde ich aber den XCopy-Befehl missbrauchen.

Frank /der Biber aus Bremen
Bitte warten ..
Mitglied: efde
08.08.2005 um 11:30 Uhr
Vielen Dank schon mal.

Aber irgendwie erzielt die Batch nicht die gewünschte Wirkung, denn bei mir werden vor dem eigentlichen Dateinamen, die im Juli erstellt wurden immernoch das Erstellungsdatum ausgegeben!
Bitte warten ..
Mitglied: Biber
08.08.2005 um 15:58 Uhr
Moin efde,
dein "DIR"-Aufruf bringt eine andere Spalten-Reihenfolge, vermute ich.
Dann musst Du wahrscheinlich an dem FOR-Parameter "Tokens=n" rumspielen.
Bei mir sieht die entsprechende 2005-08.log so aus:
D:\temp>type 2005-08.log
2pbat.bat
Logmirwatt.bat

Works as designed.
Biber
[edit]
Dann teste doch erst mal die schmucklose Rohfassung vom CMD-Prompt aus
01.
for /F "tokens=3-5" %a in ('dir ') do echo %a %b %c
bis Du weißt, welche Spalte die für Dich brauchbare ist.
[/edit]
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern (18)

Frage von kampen zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch ausgabe zeilenweise stat spaltenweise ausgeben (4)

Frage von sugram zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Windows Systemdateien
NTFS und die Defragmentierung (26)

Frage von WinLiCLI zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Zwei Subnetze mit je eigenem Router und Internetzugang verbinden (18)

Frage von hannsgmaulwurf zum Thema LAN, WAN, Wireless ...

Windows Server
WIndows Server 2016 core auf dem Intel NUC NUC5i5RYK i5 5250U (17)

Frage von IxxZett zum Thema Windows Server ...