Auswählen einer einzelnen Zeile mit dem Befehl in der Windows-Eingabeaufforderung

Auswählen einer einzelnen Zeile mit dem Befehl in der Windows-Eingabeaufforderung

Ich habe eine Batchdatei erstellt, die in eine reine Textdatei umleitet. Die Batchdatei geht zum angegebenen Pfad, dort wird der Dir-Befehl ausgeführt und die Ausgabe wird in eine Textdatei umgeleitet.

Wenn ich jetzt die Textdatei öffne, sehe ich den gesamten Baum, aber ich möchte nur einen Ordner, der zuletzt geändert wurde.

Kann mir also jemand den Befehl sagen, den ich eingeben muss, damit nur dieser Ordner ausgewählt und in meine Textdatei gedruckt wird?

Unten ist der Inhalt meiner Batchdatei:

S:
cd S:\log\logit-esb\dhl\subscriptions
dir >> D:\Abhi_Work\System_Monitoring\System_monitoring.txt

Wenn ich die folgende Batchdatei ausführe, wird die Ausgabe an meine Textdatei weitergeleitet.

 Directory of S:\log\logit-esb\dhl\subscriptions

05/01/2015  04:25 PM    <DIR>          .
05/01/2015  04:25 PM    <DIR>          ..
05/01/2015  04:25 PM    <DIR>          processed
               0 File(s)              0 bytes
               3 Dir(s)   4,682,932,224 bytes free
 Volume in drive S is System
 Volume Serial Number is 42A7-D3B7

Meine Anforderung ist, dass in der Ausgabedatei nur die folgende Zeile angezeigt werden soll

05/01/2015  04:25 PM    <DIR>          processed

Also, kann mir jemand dabei helfen, dies zu erreichen?

Antwort1

Der folgende Befehl in Ihrer Batchdatei führt das gewünschte Ergebnis aus:

dir | findstr "processed" >> D:\Abhi_Work\System_Monitoring\System_monitoring.txt

Sie sollten zunächst sicherstellen, System_monitoring.txtdass es sich um eine leere Datei handelt, da Folgendes >>an die Datei angehängt wird ...


QuelleSuche nach Zeichenfolgen in Dateien.

Piping und Umleitung

Eine Textdatei kann an FINDSTR weitergeleitet oder umgeleitet werden:

Datenstrom aus einer Pipe TYPE file.txt | FINDSTR "searchString"

Stdin über Umleitung FINDSTR "searchString"

Die verschiedenen Datenquellenspezifikationen schließen sich gegenseitig aus - FINDSTR kann nur mit einem der folgenden Argumente arbeiten: Dateinamenargument(e), /F:Dateioption, umgeleitete Eingabe oderweitergeleitete Eingabe.

Antwort2

Dies ist Powershell, das in Windows 7 enthalten ist und den zuletzt geänderten Ordner in einem Pfad anzeigt.

get-childitem -path c: | sort-object LastWriteTime -descending | select -first 1 | format-table -hidetableheaders

verwandte Informationen