Textdatei zeilenweise auslesen
Hallo Community,
Ich versuche anhand einer Liste Programme in der Windows Firewall zu blocken, leider klappt es nicht wie gewollt, da anscheinend die Parameter %name% und %pfad% beim netsh Aufruf nicht vorhanden sind..
Ist warscheinlich eine Kleinigkeit, allerdings bin ich nur ein Anfänger ;)
Hier mal der Code:
@echo off
setlocal EnableDelayedExpansion
cd /d "%~dp0"
for /f "tokens=1* delims=," %%b in ('findstr /n . "C:\Users\glock_000\Desktop\Blockliste.txt"') do (
if %%b==1 set "name=%%c"
if %%b==2 set "pfad=%%c"
netsh advfirewall firewall add rule name="!name!" dir=in program="!pfad!" action=block
netsh advfirewall firewall add rule name="!name!" dir=out program="!pfad!" action=block
)
pause
Ich versuche anhand einer Liste Programme in der Windows Firewall zu blocken, leider klappt es nicht wie gewollt, da anscheinend die Parameter %name% und %pfad% beim netsh Aufruf nicht vorhanden sind..
Ist warscheinlich eine Kleinigkeit, allerdings bin ich nur ein Anfänger ;)
Hier mal der Code:
@echo off
setlocal EnableDelayedExpansion
cd /d "%~dp0"
for /f "tokens=1* delims=," %%b in ('findstr /n . "C:\Users\glock_000\Desktop\Blockliste.txt"') do (
if %%b==1 set "name=%%c"
if %%b==2 set "pfad=%%c"
netsh advfirewall firewall add rule name="!name!" dir=in program="!pfad!" action=block
netsh advfirewall firewall add rule name="!name!" dir=out program="!pfad!" action=block
)
pause
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 185999
Url: https://administrator.de/forum/textdatei-zeilenweise-auslesen-185999.html
Ausgedruckt am: 22.04.2025 um 21:04 Uhr
6 Kommentare
Neuester Kommentar
Hallo GlockMane!
Dein Stichwort ist "
Grüße
bastla
Dein Stichwort ist "
delayedexpansion
" - auch gleich zu Beginn des Tutorials zur FOR-Schleife besprochen ...Grüße
bastla
... was auch daran liegen könnte, dass Du ja nur entweder einen Namen oder einen Pfad festlegst (bzw den alten Variableninhalt weiter verwendest) - wenn Du übrigens die erste Zeile auf "
Was steht denn übrigens genau in Deiner "Blockliste.txt"?
Grüße
bastla
echo on
" änderst, kannst Du den Ablauf des Batches besser nachvollziehen ...Was steht denn übrigens genau in Deiner "Blockliste.txt"?
Grüße
bastla
Hallo GlockMane!
Dann sähe das aber eher einfach so aus:
Grüße
bastla
Dann sähe das aber eher einfach so aus:
@echo on & setlocal
for /f "usebackq tokens=1* delims=," %%b in ("C:\Users\glock_000\Desktop\Blockliste.txt") do (
netsh advfirewall firewall add rule name="%%b" dir=in program="%%c" action=block
netsh advfirewall firewall add rule name="%%b" dir=out program="%%c" action=block
)
pause
bastla