View previous topic :: View next topic |
Author |
Message |
doedel Guru
Joined: 05 Feb 2006 Posts: 579 Location: Denmark
|
Posted: Mon Apr 27, 2009 3:07 pm Post subject: ps aux | grep blahr ---> grep aus der Ausgabe rausnehmen |
|
|
Ich habe gerade ein kleines Problem. Ich bastle mir ein Webinterface für den Streamripper auf meinem Musik-Player-PC.
Nun will ich natürlich rausfinden, ob der läuft, ganz einfach mit ps aux | grep streamripper. Im php Script würde das dann so aussehen:
Code: |
$bla = exec("ps aux | grep streamripper");
if(bla != '') { echo "streamripper ist aus"; }
|
Doch der wird immer als an gemeldet, da die Ausgabe der Befehlszeile so aussieht:
Code: |
player@player:~$ ps aux | grep streamripper
root 4074 0.6 1.0 14004 2644 pts/0 S<l+ 16:55 0:01 streamripper radio.bla.blubb:12345
player 4100 0.0 0.2 3140 768 pts/4 S<+ 16:58 0:00 grep streamripper
|
Selbst wenn er aus ist, kommt das nicht "Nichts" bei raus, da immer der grep Prozess mit angezeigt wird.
Lässt sich das in der einen Befehlszeile irgendwie hinbiegen oder muss ich die Ausgabe von ps aux erstmal umleiten und dann rausgreppen? Oder gar ganz anders?
Die Möglichkeit das einfach unter einem bestimmten User XYZ laufen zu lassen, gibts nicht, da das von verschiedenen Usern aus gestartet/gestoppt werden soll. Das wäre mir dann zu aufwendig das auf einen User umzubasteln.
Ich hoffe, da kann mir einer von euch helfen. _________________ 1 ha == 1 Hekto-Ar == 1 Hektar |
|
Back to top |
|
|
papahuhn l33t
Joined: 06 Sep 2004 Posts: 626
|
Posted: Mon Apr 27, 2009 3:23 pm Post subject: |
|
|
Code: | ps aux | grep irgendwas | grep -v grep |
_________________ Death by snoo-snoo! |
|
Back to top |
|
|
disi Veteran
Joined: 28 Nov 2003 Posts: 1354 Location: Out There ...
|
Posted: Mon Apr 27, 2009 3:23 pm Post subject: |
|
|
Ich wuerde einfach nochmal greppen
Code: | disi@disi-openvz ~ $ ps aux | grep ssh-agent | grep -v grep
disi 17010 0.0 0.0 3656 520 ? Ss Feb27 0:00 ssh-agent |
//edit: grr zu langsam |
|
Back to top |
|
|
Knieper l33t
Joined: 10 Nov 2005 Posts: 846
|
Posted: Mon Apr 27, 2009 3:42 pm Post subject: |
|
|
Das geht auch einfacher. Such doch einfach nur nach dem Kommando, zB.:
Du kannst auch das Format von ps selbst bestimmen, zB.:
Code: | ps -o pid,cmd -C thttpd |
_________________ Je dümmer desto Gnome/KDE. |
|
Back to top |
|
|
doedel Guru
Joined: 05 Feb 2006 Posts: 579 Location: Denmark
|
Posted: Mon Apr 27, 2009 5:31 pm Post subject: |
|
|
Bei ps ist wiederum das Problem, dass auch immer eine Ausgabe kommt, sie soll nur kommen, wenn der streamripper läuft.
Das mit dem grep -v ist perfekt
Vielen Dank! _________________ 1 ha == 1 Hekto-Ar == 1 Hektar |
|
Back to top |
|
|
Necoro Veteran
Joined: 18 Dec 2005 Posts: 1912 Location: Germany
|
Posted: Mon Apr 27, 2009 5:33 pm Post subject: |
|
|
statt "aux" einfach "-e" nehmen?
Code: | necoro@Zakarumiy ~ % ps -e | grep mpd
3310 ? 00:03:31 mpd
necoro@Zakarumiy ~ % ps -e | grep moo |
_________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
|
Knieper l33t
Joined: 10 Nov 2005 Posts: 846
|
Posted: Mon Apr 27, 2009 5:57 pm Post subject: |
|
|
doedel wrote: | Bei ps ist wiederum das Problem, dass auch immer eine Ausgabe kommt, sie soll nur kommen, wenn der streamripper läuft. |
Das stimmt log'weise nicht. Wenn Du drüber nachgedacht hättest, wäre es Dir selbst aufgefallen:
Code: | >ps -o pid= -C zsh
3134
>echo rv: $?
rv: 0
>ps -o pid= -C zshe
>echo rv: $?
rv: 1
|
_________________ Je dümmer desto Gnome/KDE. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Mon Apr 27, 2009 8:31 pm Post subject: |
|
|
genügt nicht? |
|
Back to top |
|
|
Knieper l33t
Joined: 10 Nov 2005 Posts: 846
|
Posted: Mon Apr 27, 2009 8:43 pm Post subject: |
|
|
Gehört zu procps und ist nicht in POSIX... _________________ Je dümmer desto Gnome/KDE. |
|
Back to top |
|
|
noclear2000 Apprentice
Joined: 21 Jun 2006 Posts: 153 Location: Germany
|
Posted: Wed Aug 23, 2017 6:17 am Post subject: |
|
|
Diese Thread ist schon soooo alt, aber hätte es nicht einfach das getan:
Code: |
ps aux | grep [s]treamripper
|
? |
|
Back to top |
|
|
musv Advocate
Joined: 01 Dec 2002 Posts: 3337 Location: de
|
Posted: Fri Aug 25, 2017 5:33 pm Post subject: |
|
|
Erklär mal bitte, was die Klammern hier bedeuten. |
|
Back to top |
|
|
noclear2000 Apprentice
Joined: 21 Jun 2006 Posts: 153 Location: Germany
|
Posted: Sat Aug 26, 2017 4:02 pm Post subject: |
|
|
musv wrote: | Erklär mal bitte, was die Klammern hier bedeuten. |
[s]treamripper ist (ein sehr einfacher) "Regulärer Ausdruck" (engl., kurz regex) mit der Bedeutung für grep von "Suche ein 's' gefolgt von der Zeichenfolge 'treamripper' und macht damit das gleiche wie ohne die Klammern. Der Unterschied ist aber, dass im ps Output nun die Klammern mit drin sind und die regex das nicht mehr findet, den sie sucht ja nicht nach dem Begriff mit den Klammern drin sondern nach streamripper, was es nicht mehr findet (weil es mit Klammern im output ist).
War doppeltgemoppelt - hoffentlich verständlich...? |
|
Back to top |
|
|
musv Advocate
Joined: 01 Dec 2002 Posts: 3337 Location: de
|
Posted: Sat Aug 26, 2017 7:45 pm Post subject: |
|
|
Hab's kapiert. grep findet sich selbst nicht, da es nicht nach Klammern sucht, weil die Regexe sind.
Wirkt wie ein hässlicher Workaround, der erstaunlich gut funktioniert. |
|
Back to top |
|
|
|