Dateien in einem Verzeichnis auflisten und auswerten mit FEF

Moderator: MVogt

Antworten
Benutzeravatar
Theo_Gottwald
Beiträge: 296
Registriert: 03. Okt 2009, 08:57
Wohnort: Herrenstr.11 * 76706 Dettenheim
Kontaktdaten:

Dateien in einem Verzeichnis auflisten und auswerten mit FEF

Beitrag von Theo_Gottwald » 30. Jul 2017, 20:29

Man hat eine Anzahl Dateien in einem Verzeichnis (oder auch noch in Unterverzeichnissen) die man in eine Dateiliste - zum Beispiel für Exel - packen will.
Oder man will die Dateien mit Versionsnummern (und Prüfsumme?) auflisten. Dazu ist der Befehl FEF\ geschaffen worden.
Dieser Befehl listet Dateien in einem Verzeichnis auf. Auf Wunsch auch alphabetisch sortiert.

Hier ein Beispielskript, das die Dateien im MPR-Ordner auflistet und in eine Textdatei schreibt.
So sieht die Textdatei aus die auf dem Desktop erzeugt wird.

Code: Alles auswählen

Dateiversionen MPR Sonntag, 30. Juli 2017
accanalyzer.exe                            	1.0.0.83     	 vom 10.02.2017 from c:\program files (x86)\matrix42\package robot
analyzer.exe                               	2.0.0.495    	 vom 10.02.2017 from c:\program files (x86)\matrix42\package robot
chckhwnd.exe                               	1.1.0.29     	 vom 10.02.2017 from c:\program files (x86)\matrix42\package robot
dwp.exe                                    	1.0.0.128    	 vom 10.02.2017 from c:\program files (x86)\matrix42\package robot
...
[gekürzt]
Hier nun das Skript dazu.
Hinweis: Da der DED\-Befehl verwendet wird läuft der Editor nicht mit.

Code: Alles auswählen


' Aktuelles Datum ermitteln und formattieren
VAR\$$dat=$date$
FMT\$$dat|long date	

' Pfad für Ausgabedatei festlegen
VAR\$$FID=?desktop\WR-Versions #date#.txt
VAR\$$TXT=Dateiversionen MPR $$dat$crlf$
DEL\$$FID

' Auffüllen mit Leerzeichen
VAR\$$LST=42

' Prüfen ob MPR installiert ist.
NAI\Matrix42 Package Robot
   SBT\5|MPR not installed.
   END\
EAI\

' Editor ausschalten
DED\1

'GPP\remote editor
'VAR\$$PAT=$v1$
'BLB\$$PAT

' Pfad des MPR bestimmen
VAR\$$PAT=?exepfad\

' Hier gehts los mit dem Dateien auflisten.
' Zuerst alle .exe-Dateien
FEF\$$PAT|*.exe|doit|$$FIL@!

' Nun alle DLL-Dateien
FEF\$$PAT|*.dll|doit|$$FIL@!

' Ausgabe schreiben
CTF\$$FID<$$TXT
@

:doit
GFT\$$FIL
VAR\$$FOL=$v2$
GFV\$$FIL>$$FVE
ALB\$$FIL
VAR\$$FIZ=$v1$
GFI\$$FIL
VAR\$$FDD=$v2$
SBD\|$$FDD|$sp$|1
VAR\$$FDD=$v1$
GSB\RSet
GSB\RSetV
VAR\$$TXT=$$TXT$crlf$$$FIZ
VAR\$$TXT=$$TXT$tab$
VAR\$$TXT=$$TXT$$FVE$tab$ vom $$FDD from $$FOL
@

:LSet
GSL\$$FIZ>$$LEN
FOR\$$CNT|$$LEN|12
   VAR\$$FIZ=$sp$$$FIZ
NXT\
RET\

:RSet
GSL\$$FIZ>$$LEN
FOR\$$CNT|$$LEN|$$LST
   VAR\$$FIZ=$$FIZ$sp$
NXT\
RET\

:RSetV
GSL\$$FVE>$$LEN
FOR\$$CNT|$$LEN|12
   VAR\$$FVE=$$FVE$sp$
NXT\
RET\

Hier noch eine Kurzversion, die das Ergebnis in einer Messagebox anzeigt.

Code: Alles auswählen

VVS\
VAR\$$TXT=Dateiversionen WinRobots $now$$crlf$
NAI\Matrix42 Package Robot
   SBT\5|WinRobots not registered.
   END\
EAI\
VAR\$$PAT=$v5$
DED\1
FEF\$$PAT|*.exe|doit|$$FIL
FEF\$$PAT|*.dll|doit|$$FIL

VVR\$$TXT
MBX\$$TXT
@

:doit
GFV\$$FIL>$$FVE
VAR\$$TXT=$$TXT$$FIL $tab$$$FVE$crlf$
@

Antworten

Zurück zu „Package Robot“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast