SORU
11 Kasım 2012, Pazar


Python alt süreci boru ile komut

ps -A | grep 'process_name' subprocess.check_output() kullanmak istiyorum. Çeşitli çözümleri denedim ama hiç biri işe yaramadı. Biri bana bunu nasıl rehberlik eder?

CEVAP
11 Kasım 2012, Pazar


subprocess modülü ile bir boru kullanmak, shell=True geçmek Zorundasınız.

Ancak, bu çeşitli nedenlerden dolayı gerçekten tavsiye, güvenlik değil en azından hangi değil. Bunun yerine, ps oluşturun ve grep ayrı ayrı süreçler ve boru gibi diğer içine: bir çıktısı

ps = subprocess.Popen(('ps', '-A'), stdout=subprocess.PIPE)
output = subprocess.check_output(('grep', 'process_name'), stdin=ps.stdout)
ps.wait()

Belirli bir durumda, ancak, basit bir çözüm çıktı subprocess.check_output(('ps', '-A')) str.find aramak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • Megan Parken

    Megan Parken

    19 Temmuz 2009
  • stokelycalm

    stokelycalm

    28 Aralık 2010