Wie kann ich Befehl in bash ausführen, um alle Python-Skripte außer Skript test.py
genannt zu töten und die grep selbst pid, falls wir so etwas wie ps -ef |grep
Töten alle Python-Skripte mit einer Ausnahme Python-Skript und dem grep Prozess
ich verwenden denke, ich kann etwas wie pgrep
Python verwenden, um den Grep-Prozess zu ignorieren, aber wie schließe ich auch das test.py
Skript aus? Ich weiß, dass es eine Option ist grep -v zu tun, gibt es Option pgrep -v
Klärung zu tun: außer grep prozess- bedeutet, wenn wir zum Beispiel tun ps -ef |grep test1.py
wir auch das grep pid erhalten, die dieses Ergebnis bringen verwendet. Ich möchte es nicht töten, da dieser Prozess in der Phase, in der die Ergebnisse gezeigt werden, nicht mehr existiert.
EDIT: Ich brauche diesen Befehl Modul gültig sein durch subprocess
der Python
k = subprocess.Popen('[some_bash_cmd_here]',shell=True)
k.wait()
Um die Argumente in der neueren 'pgrep's nicht zu bekommen, was Sie brauchen' zu verwenden -fa' statt '-fl'? Zumindest bei RHEL 7 ist das der Fall, und bei den letzten Fedora-Versionen auch –
Eigentlich weiß ich nichts über die neuesten 'pgrep's, da ich auf OSX bin und ein anderes' pkill' über 'home brew' installiert habe und beide nicht support '-a' – anubhava
Vielen Dank jetzt Ich versuche dieses Skript über gitlab-ci zu starten, welches Python-Skripte ausführen kann. In test.py mache ich folgendes, das Sie in den folgenden Code geschrieben haben: 'k = subprocess.Popen (bash_cmd, shell = True) k.wait()' – JavaSa