Найти - Пользователи
Полная версия: Запуск утилиты (Linux)
Начало » Python для новичков » Запуск утилиты (Linux)
1
Ispoline
Вобщем надо сделать парсер сообщений утилиты ausearch
сам парсер вроде готов а вот запуск утилиты вызывает зависание скрипта
Использую следующий код
import subprocess

def run(cmd):
PIPE = subprocess.PIPE
p = subprocess.Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=subprocess.STDOUT)
return p.stdout.read()

tmp = run("ausearch -f /new")
Вобщем хотел бы разобраться
Rodegast
import subprocess

def run(cmd):
return subprocess.Popen(cmd, stdout = subprocess.PIPE, stderr = subprocess.STDOUT).stdout.read()

tmp = run(["ausearch", "-f", "/new"])
plastun
Можно использовать модуль commands. Например:

In [1]: import commands
In [2]: output = commands.getoutput('ls -t /tmp')
In [3]: output
Out[3]: 'orbit-user\nhsperfdata_user\ntest.py\npulse-PKdhtXMmr18n\nvirtual-user.VA6zP1\nvmware-user\npulse-dDWe8cdrIzZr\nkeyring-uxioAd\nssh-VSyDAs1825\norbit-gdm\nvmware-root\nVMwareDnD'
Denis Yagovkin
Я в программе использовал следующее:
urpm = "'urpmi %s'" % inst
cmd = 'lxterminal --command=%s' % (urpm)
PIPE = subprocess.PIPE
p = subprocess.Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE,
stderr=subprocess.STDOUT, close_fds=True)
while True:
s = p.stdout.readline()
if not s: break
print s,
break
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB