2017-05-07 19 views
1

別の特定のPythonスクリプトが実行されているかどうかをPythonスクリプトから確認するにはどうすればよいですか?特定のPythonスクリプトが既に実行中であることを確認してください

def running(): 
    for q in psutil.process_iter(): 
     print q 
     if q.name() == 'server_class.py': 
      return True 
    return False 

私はそれを試みましたが、プログラムは "python"と呼ばれ、スクリプトの名前ではありません。

+0

他のスクリプトを制御しますか?もしそうなら、プロセス間通信の何らかの形でそれが実行されているかどうか調べることができます。 – handle

+0

* Nix:https://unix.stackexchange.com/questions/110698/how-to-check-which-specific-processes -python-scripts-are-running – handle

答えて

1

pythonスクリプトファイルはコマンドラインの一部になります。

def running(): 

    for q in psutil.process_iter(): 
     if q.name() == 'python': 
      print q.cmdline() 
      if len(q.cmdline)>1 and 'server_class.py' in q.cmdline()[1]: 
       return True 

    return False 

私はこの例ではinを使用しています。完全なパスに一致させることができます。

関連する問題