Lässt sich in Windows per cmd bzw. Batchdatei eine Liste aller EXE-Datein OHNE Dateipfade ausgeben??

...komplette Frage anzeigen

2 Antworten

Die Liste in EXE_Liste.txt wird ohne den Pfad in richtigeExeListe.txt gespeichert:

@echo off & setlocal enableDelayedExpansion

echo -- Liste aller .exe Dateien ohne Pfad -- > richtigeExeListe.txt

for /f "delims=" %%L in (EXE_Liste.txt) do (
call :LineAuseinandernehmen "%%L"
echo.!return! >> richtigeExeListe.txt
)
exit

:LineAuseinandernehmen (String line) {
set "restString=%~1"

:while
for /f "tokens=1* delims=\" %%a in ("%restString%") do (
set "return=%%a"
set "restString=%%b"
)
if defined restString goto :while

exit /b
}


Ohne 2 Textdateien alles zusammen:

@echo off & setlocal enableDelayedExpansion

echo -- Liste aller .exe Dateien ohne Pfad -- > ExeListe.txt

for /f "delims=" %%L in ('dir /s /b *.exe') do (
call :LineAuseinandernehmen "%%L"
echo.!return! >> ExeListe.txt
)
exit

:LineAuseinandernehmen (String line) {
set "restString=%~1"

:while
for /f "tokens=1* delims=\" %%a in ("%restString%") do (
set "return=%%a"
set "restString=%%b"
)
if defined restString goto :while

exit /b
}


~Tim

HIILLFFEEEEEE 17.08.2017, 17:59
Eine LIste ist da aber seeehr viel kürzer als eine andere Liste mit Pfaden 

@ECHO off
dir /s /b *.exe >EXE_Liste.txt
0

https://regex101.com/r/NvyvlD/1

this should do the magic :-)

LeonardM 12.08.2017, 08:46

mit regex lässt sich das problem leicht lösen. ich hab dir ein beispiel geschrieben mit demo das es funktioniert und oben verlinkt.

0
LeonardM 12.08.2017, 08:47

also mit regex kannst du falls dir das garnichts sagt aus strings bestimmte inhalte filtern.

0
timlg07 15.08.2017, 01:16

Aber ich denke sie will das nicht manuell machen und später dann noch mit den Werten arbeiten. Darum steht in der Frage auch "per cmd bzw. Batchdatei"

0
LeonardM 15.08.2017, 10:20

@timlg07 regex ist in den meisten programmsprachen vertreten. ich habe gehofft auch in batch.

1
LeonardM 18.08.2017, 07:56
@timlg07

whoops. da scheinst du richtig zu liegen. ich habe batch noch aus meinen sehr jungen zeiten in erinnerung. ich hatte ne schleife und if statements und hab mich total gefreut damals. :-D

1

Was möchtest Du wissen?