The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > UNIX für Fortgeschrittene und Experten
.
Google unix.com



UNIX für Fortgeschrittene und Experten Expert-to-Experte. Erfahren Sie fortgeschrittene UNIX-, UNIX-Kommandos, Linux-Betriebssysteme, System-Administration, Programmierung, Shell, Shell-Skripte, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
GM b / n töten und kill -9 ammu UNIX für Fortgeschrittene und Experten 2 07-18-2007 06:29 PM
kill (0, -9) nicht der Prozess beendet umen High-Level-Programmierung 9 06-19-2007 07:09 AM
nicht in der Lage zu töten finden mit kill -9 Amardeep UNIX for Dummies Questions & Answers 5 01-04-2007 05:49 PM
KILL PID, intern sollte töten anderen PID. rkrgarlapati Shell Programmierung und Scripting 4 10-17-2006 08:47 AM
Wenn töten doesnt Arbeit, wie man einen Prozess? VijayHegde UNIX für Fortgeschrittene und Experten 3 05-12-2006 05:24 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Suche diesen Thread Bewertung: Thread Rating: 1 votes, 2.00 average. Anzeige-Modi
  #1 (permalink)  
Old 08-02-2008
luckypower luckypower is offline
Registrierte Nutzer
  
 

Join Date: Aug 2008
Beiträge: 6
KILL ohne PID

Frohe Experten

Ich habe ein Problem.
ich ein Skript in backgroun.
und ich möchte, zu töten, dass Skript mit nur Skriptnamen .....
Was ist die Lösung ..

für Ihre Infos
mein Skript Name ist "testscript" n enthält "sleep 100"

Dank ....
  #2 (permalink)  
Old 08-02-2008
Ära era is offline Forum Advisor  
Herder sinnlosen Katzen (Am Sabbatical)
  
 

Join Date: März 2008
Location: / es / ist / nur / bin / sh
Beiträge: 3652
Wenn Ihr System pidof, Verwenden Sie diese. Andernfalls wird die übliche Lösung ist, um grep auf einem ps Auflistung der Prozesse, und die Verwendung zu finden, dass die PID, die an töten. Allerdings, ein naiver Versuch wird das Problem, dass es finden sich in den Prozess Auflistung und Selbstmord statt töten die beabsichtigte Ziel. Die richtige Lösung für diese, ist die Verwendung eines regulären Ausdrucks, die nicht direkt mit sich selbst als Such-String.

Leider sind die Optionen-und Output-Format ps variiert von einem System zum anderen. Die folgenden Arbeiten, die für mich auf eine neuere Version von Ubuntu.


Code:
ps t | awk '$5 ~ /^[t]estscript/ { print $1 }' | xargs -r kill

Die Verwendung von [t] statt nur eine reine t ist die Lösung für die "Skript selbst töten" Problem. Die Verwendung von xargs-r verhindert töten aus betrieben werden, wenn es keine Spiele (es wäre nur eine Warnmeldung über laufende töten ohne Argumente, so dass es sich nicht um eine sehr tödlichen Problem).

Die Option t und die Zahl $ 1 und $ 5 müssen möglicherweise geändert werden, für Ihr System. Wenn Sie Google für eine ähnliche Lösung für Ihre Plattform, sich für die oben beschriebenen Probleme. Für stilistische Gründe, einer einzigen awk Skript sollte bevorzugt werden, was ist liebevoll genannt Nutzlos Verwendung von Grep.

Zuletzt bearbeitet von ERA; 08-02-2008 auf 04:44 AM..
  #3 (permalink)  
Old 08-26-2008
ddreggors ddreggors is offline
Registrierte Nutzer
  
 

Join Date: Aug 2008
Beiträge: 91
Zitat:
Zitat von Ära View Post

Code:
ps t | awk '$5 ~ /^[t]estscript/ { print $1 }' | xargs -r kill

Es ist ok Ära, ich tue es für Sie
  #4 (permalink)  
Old 08-02-2008
Neo's Avatar
Neo Neo is offline Forum Staff  
Administrator
  
 

Join Date: Sep 2000
Ort: Asien-Pazifik-Raum
Posts: 6777
Wenn Sie mit Linux, können Sie die killall Befehl aus, um einen Prozess mit der Prozess-Name (n) (nicht die PID).

Siehe zum Beispiel: killall (1): kill Prozesse nach Namen - Linux Manpage

Se alle, pkill: http://linux.die.net/man/1/pkill
  #5 (permalink)  
Old 08-02-2008
luckypower luckypower is offline
Registrierte Nutzer
  
 

Join Date: Aug 2008
Beiträge: 6
Ich habe die Lösung
Verwenden
kill `ps-C test.sh-o pid \u003d`
  #6 (permalink)  
Old 08-02-2008
Neo's Avatar
Neo Neo is offline Forum Staff  
Administrator
  
 

Join Date: Sep 2000
Ort: Asien-Pazifik-Raum
Posts: 6777
Unter Linux können Sie einfache Art:

killall testscript
  #7 (permalink)  
Old 08-02-2008
Respekt redoubtable is offline
Registrierte Nutzer
  
 

Join Date: Aug 2008
Ort: Portugal
Beiträge: 242
Etwas einfacher:
killall procName

Eine weitere Möglichkeit:
in Ihrem Skript, eine temporäre Datei, die die aktuelle PID des Skripts. Wenn Sie wollen, den Prozess zu beenden, verwenden Sie diese als solche: kill -9 `cat pidfile"

Wenn Sie möchten, dass etwas sehr spezifisch und präzise:
- Setuid () an einen anderen Benutzer, die nur läuft dieser Prozess (Skript)
- Pkill -9-u youruser
Sie können auch pkill zu töten, alle Prozesse mit einem bestimmten Terminal pkill -9-t pts / 1
Closed Thread

Lesezeichen

Tags
Prozess-ID finden, töten

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 11:14 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0