Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Prozess per PID killen - Bestimmte Zeichenfolge aus Txt-Datei in Batch-Datei nutzen

Mitglied: raffi3110

raffi3110 (Level 1) - Jetzt verbinden

07.11.2008, aktualisiert 13.11.2008, 7202 Aufrufe, 4 Kommentare

Hallo zusammen,
ich habe folgendes Problem. Ich schreibe gerade an einer Batchdatei und bin an einen Punkt gelangt wo ich nicht mehr durch Recherche weiterkomme.

Warum ich diese Batchdatei brauche ist dieser Grund:
Der User soll wenn ihm der Prozess UNWICHTIG.EXE hängen bleibt diesen Prozess durch ausführen der Batchdatei schließen können. Problem bei diese Sache ist jetzt aber man kann nicht einfach hergehen und den Befehl:

@echo off
echo.
echo Unwichtig wird beendet
echo.
taskkill /im UNWICHTIG.EXE

in die Batchdatei schreiben. Da diese Batchdatei im Netzwerk ausgeführt wird und dort mehrere UNWICHTIG.EXE Prozesse von verschiedenen Usern laufen.
Darum bin ich hergegangen und habe mir versucht die PID des Prozesses zu suchen und diesen dann mittels der PID zu beenden.

Zuerst habe ich mir die txt-Dati "var" erstellt. Danach habe ich mir die tasklist als CSV generiert und danach mir komplett alle Angaben zum Prozess UNWICHTIG.EXE geholt und in die txt-Datei geschrieben.

@echo off
echo.
echo unwichtig killen
echo.

var.txt
tasklist /FO "CSV" /FI "IMAGENAME eq UNWICHTIG.EXE" > var.txt


Problem ist das ich nicht weiß wie ich wie ich jetzt die PID aus der txt-Datei bekomme und wieder in die Batchdatei um den Prozess per PID zu schließen.

Gibt es vielleicht auch eine andere Möglichkeit? Vielleicht denke ich zu kompliziert.
Es muss aber vollautomatisch sein da die User nicht wissen sollen wie die Batchdatei das macht.

Ich hoffe ich habe das Problem hinreichend erklärt.

Ich danke für jede Antwort.
MfG Raffi

P.S. Ich hatte echt Probleme eine angemessene Überschrift zu finden für diese Problem ich hoffe das geht
Mitglied: Ren
11.11.2008 um 15:01 Uhr
ich habe es zwar noch nicht ganz verstanden, weiß vor allem nicht, ob in der var.txt jetzt mehrere Prozesse mit dem Namen auftauchen, oder exakt einer, aber grundlegend wäre die Idee dir for-Schleife:
01.
FOR /F "tokens=2 delims=," %i IN ('type "var.txt"') DO set pid=%i 
02.
set pid=%pid:~1,-1% 
03.
taskkill /PID %pid%
Das ganze geht natürlich nur, wenn es nur einen Prozess mit dem Namen gibt, das Beispiel würde sonst die letzte PID nehmen. Aber in diesem Bezug habe ich dein Problem noch nicht so 100%tig verstanden.
Hoffe, ich konnte weiterhelfen
Bitte warten ..
Mitglied: raffi3110
11.11.2008 um 16:22 Uhr
Wir betreiben ein WTS System wo jeder User seine Session hat. Öffters stürzt ein bestimmter Prozess ab und wir müssen diesen immer wieder killen. Das ist auf dauer nervig und lenkt uns von wichtigeren dingen ab. Deswegen dachten wir uns eine Batschdatei zu schreiben mit der die User selber den Prozess schließen können.

Durch Gruppenrichtlinien können/dürfen die User den Taskmanager nicht öffnen. Daher müssen wir das immer machen.

Es gibt mehrere Prozesse die gleichnamig sind aber sich durch den Nutzer und die PID unterscheiden.

Ich habe das versucht was für mich logisch war, aber kann sein das das Falsch war, weil ich mich in diesem Thema nicht auskenne.
Danke für die schnelle antwort.
MfG Raffi

P.S. ich hoffe ich konnte den Nebel des Problems ein bisschen lichten.
Bitte warten ..
Mitglied: Biber
11.11.2008 um 17:32 Uhr
Moin raffi3110,

Du kannst doch den Filter um eine weitere Bedingung erweitern.
Vorarbeit am CMD-Prompt (proof-of-concept):
01.
tasklist /FO "CSV" /FI "IMAGENAME eq UNWICHTIG.EXE" /FI "username eq %username%" 
02.
-oder- 
03.
tasklist /Fo list  /FI "IMAGENAME eq UNWICHTIG.EXE" /FI "username eq %username%"|find /i "PID:"
... und danach die eigentliche Aufgabe IMHO einfacher so handeln:
01.
taskkill  /FI "IMAGENAME eq INWICHTIG.EXE" /FI "username eq %username%"|find /i "PID:"
[TaskKill ggf. mit Parameter /F, siehe TaskKill /?]

Grüße
Biber
Bitte warten ..
Mitglied: raffi3110
13.11.2008 um 09:52 Uhr
Hallo
danke für eure Beiträge haben mir sehr viel weitergehlofen. Mein Kollege und ich haben dann noch ein bisschen weiterdaran gearbeitet und sind dann zu dieser Lösung gekommen.
01.
@echo off 
02.
 
03.
TITLE Prozess beenden 
04.
COLOR F1 
05.
 
06.
 
07.
:ANFANG 
08.
CLS 
09.
 
10.
echo. 
11.
echo  Sie koennen ausgewaehlte Programme gewaltsam beenden. 
12.
echo  Waehlen Sie hierzu eine der folgenden Kennziffern: 
13.
echo. 
14.
echo  Aktion:                   Kennziffer: 
15.
echo  ===================================== 
16.
echo. 
17.
echo  Prozess1 beenden              W 
18.
echo  Prozess2 beenden              E 
19.
echo. 
20.
echo  Aktionen abbrechen            X 
21.
echo  _____________________________________ 
22.
echo. 
23.
echo. 
24.
echo  Bestaetigen Sie Ihre Eingabe mit ENTER. 
25.
echo. 
26.
echo. 
27.
 
28.
 
29.
SET /P EINGABE=Eingabe: 
30.
 
31.
 
32.
 
33.
IF %EINGABE%==w GOTO eingabe%EINGABE% 
34.
IF %EINGABE%==W GOTO eingabe%EINGABE% 
35.
IF %EINGABE%==e GOTO eingabe%EINGABE% 
36.
IF %EINGABE%==E GOTO eingabe%EINGABE% 
37.
IF %EINGABE%==x GOTO eingabe%ENDE2% 
38.
IF %EINGABE%==X GOTO eingabe%ENDE2% 
39.
 
40.
GOTO ERRORMARKE 
41.
 
42.
 
43.
REM ------------------ Prozess1 beenden ---------------------------------------------- 
44.
 
45.
:eingabeW  
46.
 
47.
echo. 
48.
echo Prozess Prozess1 beenden 
49.
echo. 
50.
 
51.
SET KillProz=PROZESS1.EXE 
52.
SET KillTemp=$var.txt 
53.
SET pid= 
54.
 
55.
TASKLIST /FO "CSV" /FI "IMAGENAME EQ %KillProz%" /FI "SESSIONNAME EQ %SESSIONNAME%" > %KillTemp% 
56.
FOR /F "tokens=2 delims=," %%i IN ('type "%KillTemp%"') DO SET pid=%%i 
57.
IF %pid%x==x GOTO ENDE 
58.
SET pid=%pid:~1,-1% 
59.
TASKKILL /T /F /PID %pid% >NUL 
60.
 
61.
 
62.
SET pid= 
63.
 
64.
TASKLIST /FO "CSV" /FI "IMAGENAME EQ %KillProz%" /FI "SESSIONNAME EQ %SESSIONNAME%" > %KillTemp% 
65.
FOR /F "tokens=2 delims=," %%i IN ('type "%KillTemp%"') DO SET pid=%%i 
66.
IF %pid%x==x GOTO ENDE 
67.
SET pid=%pid:~1,-1% 
68.
TASKKILL /T /F /PID %pid% >NUL 
69.
 
70.
 
71.
SET pid= 
72.
 
73.
TASKLIST /FO "CSV" /FI "IMAGENAME EQ %KillProz%" /FI "SESSIONNAME EQ %SESSIONNAME%" > %KillTemp% 
74.
FOR /F "tokens=2 delims=," %%i IN ('type "%KillTemp%"') DO SET pid=%%i 
75.
IF %pid%x==x GOTO ENDE 
76.
SET pid=%pid:~1,-1% 
77.
TASKKILL /T /F /PID %pid% >NUL 
78.
 
79.
GOTO ENDE 
80.
 
81.
 
82.
REM ------------------ Prozess2 beenden ---------------------------------------------- 
83.
 
84.
:eingabeE  
85.
 
86.
echo. 
87.
echo Prozess Prozess2 beenden 
88.
echo. 
89.
 
90.
SET KillProz=PROZESS2.EXE 
91.
SET KillTemp=$var.txt 
92.
SET pid= 
93.
 
94.
TASKLIST /FO "CSV" /FI "IMAGENAME EQ %KillProz%" /FI "SESSIONNAME EQ %SESSIONNAME%" > %KillTemp% 
95.
FOR /F "tokens=2 delims=," %%i IN ('type "%KillTemp%"') DO SET pid=%%i 
96.
IF %pid%x==x GOTO ENDE 
97.
SET pid=%pid:~1,-1% 
98.
TASKKILL /T /F /PID %pid% >NUL 
99.
 
100.
 
101.
SET pid= 
102.
 
103.
TASKLIST /FO "CSV" /FI "IMAGENAME EQ %KillProz%" /FI "SESSIONNAME EQ %SESSIONNAME%" > %KillTemp% 
104.
FOR /F "tokens=2 delims=," %%i IN ('type "%KillTemp%"') DO SET pid=%%i 
105.
IF %pid%x==x GOTO ENDE 
106.
SET pid=%pid:~1,-1% 
107.
TASKKILL /T /F /PID %pid% >NUL 
108.
 
109.
 
110.
SET pid= 
111.
 
112.
TASKLIST /FO "CSV" /FI "IMAGENAME EQ %KillProz%" /FI "SESSIONNAME EQ %SESSIONNAME%" > %KillTemp% 
113.
FOR /F "tokens=2 delims=," %%i IN ('type "%KillTemp%"') DO SET pid=%%i 
114.
IF %pid%x==x GOTO ENDE 
115.
SET pid=%pid:~1,-1% 
116.
TASKKILL /T /F /PID %pid% >NUL 
117.
 
118.
GOTO ENDE 
119.
 
120.
 
121.
REM ------------------ ERROR Meldung ---------------------------------------------- 
122.
 
123.
:ERRORMARKE 
124.
 
125.
echo. 
126.
echo  -------------------------------------------------------  
127.
echo    Es wurde die ungueltige Taste "%EINGABE%" gedrueckt. 
128.
echo  -------------------------------------------------------  
129.
echo. 
130.
echo. 
131.
 
132.
PAUSE 
133.
 
134.
GOTO ANFANG 
135.
 
136.
REM ------------------ ENDE ---------------------------------------------- 
137.
 
138.
:ENDE 
139.
 
140.
DEL %KillTemp% 
141.
 
142.
:ENDE2 
143.
 
144.
 
Zur Erklärung wir haben mehrmals den Code für Prozess schließen in die Batchdatei getan, weil die User manchmal mehrere Prozesse mit gleichen Namen haben und damit diese dann auch beendet werden.

Nochmals vielen dank für eure Hilfe

MfG Raffi
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch zum suchen bestimmter Dateien
gelöst Frage von FurycanBatch & Shell2 Kommentare

Hallo zusammen, ich hoffe man kann mir hier helfen. Ich Suche ein Script das mir folgendes macht: In einem ...

Windows Server

Einem Benutzer erlauben Prozesse zu killen

gelöst Frage von KMP1988Windows Server3 Kommentare

Servus, kann man für einen Domänen-User ein Recht vergeben, dass er einen bestimmten Prozess beenden kann? (Taskmanager Prozesse Prozess ...

Batch & Shell

Per Batch eine XLS-Datei in eine TXT-Datei umwandeln

Frage von skiing69Batch & Shell5 Kommentare

Hallo Wissende, ich möchte täglich automatisiert, ohne das Programm Excel zu öffnen, eine XLS-Datei in eine TXT-Datei (Feldtrennzeichen als ...

Batch & Shell

Batch Datei erstellen - bestimmte Dateien verschieben

Frage von KingKoengBatch & Shell2 Kommentare

Hallo zusammen, ich benötige ein Batch dass mir per Parameter-Übergabe bestimmte Dateien von einem Verzeichnis ins andere verschiebt. Bspl: ...

Neue Wissensbeiträge
Vmware
VMware Update für den ESXi 5.5 verfügbar
Information von sabines vor 18 StundenVmware

Nach dem ganzen Hickhack um Update mit Microcode Anpassungen und Rückzug, gibt es nun für den ESXi 5.5 ein ...

CPU, RAM, Mainboards

Meltdown und Spectre: Intel zieht Microcode-Updates für Prozessoren zurück

Information von keine-ahnung vor 22 StundenCPU, RAM, Mainboards5 Kommentare

Moin, extrem lutztig. Nur gut, dass ich noch nicht beim Probanden-Bingo mitgemacht habe :-) LG, Thomas

Router & Routing
PfSense als Addon auf QNAP
Information von magicteddy vor 1 TagRouter & Routing7 Kommentare

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 1 TagDatenschutz1 Kommentar

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement26 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Server
TEMP-Profile
gelöst Frage von Forseti2003Windows Server21 Kommentare

Guten Morgen, wer kennt sie nicht, die lieben Temporären Benutzerprofile, vorallem immer dann, wenn man sie am wenigsten braucht. ...

Multimedia & Zubehör
Welches Tablet für die Verkäufer?
Frage von Hendrik2586Multimedia & Zubehör16 Kommentare

Guten Morgen meine Lieben, vielleicht könnt ihr mir ja helfen. Es geht um unsere Außendienstmitarbeiter /Verkäufer. Sie sollen demnächst ...

Ubuntu
Ubuntu - Routing mit 2 Netzwerkkarten?
Frage von gabrixlUbuntu13 Kommentare

Hei Folgende Situation: Ich habe zwei virtuelle Maschinen: 1 - Server für DHCP, DNS und Routing - Netzwerkkarte 1: ...