Batch Taskkill funktioniert nicht!?

Basti_TG

Newbie
Registriert
Mai 2018
Beiträge
1
Hi Leute,

ich habe mal ne kurze Frage.

Habe heute mal ein wenig mit Batch/Cmd rumgespielt und bin auf folgendes Problem gestoßen:

Der Befehl Taskkill funktioniert nicht wenn man zuvor eine Umgebungsvarriable (set /p...) eingefügt hat :(.

Beispiel:
1) Funktioniert siehe Bild 1
-----------------------------------
@echo on
echo Test
taskkill /F /IM javaw.exe
pause
-----------------------------------


2) Funktioniert nicht siehe Bild 2
-----------------------------------
@echo on
echo Test
set /p path="Gebe etwas ein: "
taskkill /F /IM javaw.exe
pause
-----------------------------------


Ich kann mir das einfach nicht erklären vielleicht könnt Ihr mir ja helfen:D

PS: Diese Beispiele sollen nur als Veranschaulichung dienen;)

LG Basti
 

Anhänge

  • Bild 2.PNG
    Bild 2.PNG
    13,7 KB · Aufrufe: 517
  • Bild 1.PNG
    Bild 1.PNG
    11,3 KB · Aufrufe: 471
Vielleicht solltest du den Pfad nicht ins Nirwana umleiten, kein Wunder, dass der Befehl nicht gefunden wird.
 
PATH enthält alle Pfade, wo Anwendungen gefunden werden können. Wenn du diese Variable überschreibst, kann taskkill.exe nun mal nirgendwo gefunden werden. Den Pfad "Gebe etwas ein:" gibt es nicht und "Gebe etwas ein:\taskkill.exe" erst recht nicht.
 
Erklär uns doch mal, warum du in Deiner Batch die PATH Variable setzen möchtest? Für einen einfachen TASKKILL muss doch die PATH Variable nicht verändert werden?

Wenn du der PATH Variable dennoch etwas hinzufügen möchtest/musst, dann solltest du sicherstellen, dass der vorhandene Eintrag, nicht entfernt/überschrieben wird. Wie von Yuuri beschrieben, beinhaltet die PATH Variable alle Pfade, wo Anwendungen gefunden werden.

Beispiel:

Code:
:: Deine Zeile, in welcher ein neuer Eintrag manuell eingegeben wird
set /p NEW_PATH="Geb etwas ein: "

:: Nimm die aktuelle PATH Variable von Windows und fuege am Ende den User Input hinzu
setx PATH "%PATH%;%NEW_PATH%"
 
Zurück
Oben