Prozess ID von einem Befehl
Guten Tag, Ich starte ein Bash-Script in dem ein wget gestartet wird. Wenn bestimmte Bedigungen zu treffen möchte ich nur den wget beenden und das würde ich gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps aux | ..." erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer? Gruß Lennart -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird. Wenn bestimmte Bedigungen zu treffen möchte ich nur den wget beenden und das würde ich gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps aux | ..." erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer?
pidof prozessname Gruß Felix
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:09 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird. Wenn bestimmte Bedigungen zu treffen möchte ich nur den wget beenden und das würde ich gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps aux | ..." erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer?
pidof prozessname
Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip Dann bekomme ich beide Prozess Ids :-( Gruß Lennart -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Lennart Mordek wrote:
pidof prozessname
Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen
wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip
Dann halt doch ps und grep: ps aux | grep wget | grep -v grep | grep 1.2.3.4 Wobei ich mir mal keine Gedanken um die Punkte gemacht habe... Gruß Jan -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Jan Handwerker, Montag 07 September 2009:
Dann halt doch ps und grep:
ps aux | grep wget | grep -v grep | grep 1.2.3.4
Dann lieber ps aux | grep [w]get | grep 1.2.3.4 Oder gleich: ps aux | grep '[w]get.*1.2.3.4' bzw. ps aux | grep '[w]get.*1\.2\.3\.4' -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Montag 07 September 2009 15:13:23 schrieb Lennart Mordek:
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:09 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird.
Wenn bestimmte
Bedigungen zu treffen möchte ich nur den wget beenden und
das würde ich
gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps
aux | ..."
erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer?
pidof prozessname
Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen
wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip
dann starte wget und rufe anschließend $! ab. wget http://1.2.3.4/abc.zip echo $!
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:29 An: opensuse-de@opensuse.org Betreff: Re: AW: Prozess ID von einem Befehl
Am Montag 07 September 2009 15:13:23 schrieb Lennart Mordek:
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:09 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird.
Wenn bestimmte
Bedigungen zu treffen möchte ich nur den wget beenden und
das würde ich
gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps
aux | ..."
erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer?
pidof prozessname
Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen
wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip
dann starte wget und rufe anschließend $! ab. wget http://1.2.3.4/abc.zip echo $!
Genau das wollte ich :-) Vielen vielen Dank. Gruß Lennart -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hallo, versucht's doch einfach mit pgrep... sjuri@kungfu:~> pgrep thunderbird 6898 6900 sjuri@kungfu:~> Gruß Stefan Felix Lemke schrieb:
Am Montag 07 September 2009 15:13:23 schrieb Lennart Mordek:
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:09 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird. Wenn bestimmte
Bedigungen zu treffen möchte ich nur den wget beenden und das würde ich
gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps aux | ..."
erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer? pidof prozessname Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen
wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip
dann starte wget und rufe anschließend $! ab. wget http://1.2.3.4/abc.zip echo $!
- -- STEFAN JURISCH - -------------------------------- SIEGNETZ.IT GmbH Schneppenkauten 1a D-57076 Siegen Tel. +49 271 68193- 0 Fax: +49 271 68193-28 http://www.siegnetz.de Amtsgericht Siegen HRB4838 Geschäftsführer: Oliver Seitz Sitz der Gesellschaft ist Siegen - -------------------------------- Das Wort "WINDOWS" stammt aus einem alten Sioux-Dialekt und bedeutet: "Weißer Mann starrt durch Glasscheibe auf Sanduhr." - -------------------------------- -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iEYEARECAAYFAkqlDNgACgkQqdb99cbyCz6SOQCfW1bc7RDIr6zvdQq1j8vphU0W KDIAn19KwJ67CyQ4tIuc54GOj4mVJwYy =fG43 -----END PGP SIGNATURE----- -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Moin, On Mon, 07 Sep 2009, 15:29:04 +0200, Felix Lemke wrote:
Am Montag 07 September 2009 15:13:23 schrieb Lennart Mordek:
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:09 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird.
Wenn bestimmte
Bedigungen zu treffen möchte ich nur den wget beenden und
das würde ich
gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps
aux | ..."
erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer?
pidof prozessname
Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen
wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip
dann starte wget und rufe anschließend $! ab. wget http://1.2.3.4/abc.zip echo $!
Das geht in die richtige Richtung, aber, wenn ich den OP richtig verstanden habe, startet er "wget" in seinem Script als Hintergrundprozess und will ihn dann spaeter u.U. wieder abschiessen. Wenn dem so ist, dann sollte die Logik wie folgt aussehen (bei dir fehlte also eigentlich nur das '&'): ... wget URL & wget_PID=$! ... if some-complex-condition; then kill $wget_PID else wait $wget_PID fi ... HTH, cheers. l8er manfred -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
-----Ursprüngliche Nachricht----- Von: Manfred Hollstein [mailto:manfred@die-hollsteins.de] Gesendet: Montag, 7. September 2009 15:47 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Moin,
On Mon, 07 Sep 2009, 15:29:04 +0200, Felix Lemke wrote:
Am Montag 07 September 2009 15:13:23 schrieb Lennart Mordek:
-----Ursprüngliche Nachricht----- Von: Felix Lemke [mailto:lemke.felix@ages-skripte.org] Gesendet: Montag, 7. September 2009 15:09 An: opensuse-de@opensuse.org Betreff: Re: Prozess ID von einem Befehl
Am Montag 07 September 2009 14:51:17 schrieb Lennart Mordek:
Guten Tag,
Ich starte ein Bash-Script in dem ein wget gestartet wird.
Wenn bestimmte
Bedigungen zu treffen möchte ich nur den wget beenden und
das würde ich
gerne über die ID von dem wget machen. Mit $$ bekomme ich die ID vom Bash-Script, was ich aber nicht beenden möchte und mit "ps
aux | ..."
erhalte ich irgendwann die ID vom wget. Geht das nicht einfacherer?
pidof prozessname
Klingt nicht schlecht. Das Problem ist nur ich habe 2 oder auch mehrere wgets am laufen
wget http://1.2.3.4/abc.zip wget http://5.6.7.8/abc.zip
dann starte wget und rufe anschließend $! ab. wget http://1.2.3.4/abc.zip echo $!
Das geht in die richtige Richtung, aber, wenn ich den OP richtig verstanden habe, startet er "wget" in seinem Script als Hintergrundprozess und will ihn dann spaeter u.U. wieder abschiessen. Wenn dem so ist, dann sollte die Logik wie folgt aussehen (bei dir fehlte also eigentlich nur das '&'):
... wget URL & wget_PID=$! ... if some-complex-condition; then kill $wget_PID else wait $wget_PID fi ...
HTH, cheers.
l8er manfred --
Richtig das & hat noch gefehlt aber das wußte ich noch, nur das mit ID nicht. Vielen Dank für alle Antworten und Vorschläge. Gruß Lennart -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (6)
-
Andre Tann
-
Felix Lemke
-
Jan Handwerker
-
Lennart Mordek
-
Manfred Hollstein
-
Stefan Jurisch