zmqshell.py
22 lines
| 697 B
| text/x-python
|
PythonLexer
Brian Granger
|
r2773 | import sys | ||
from subprocess import Popen, PIPE | ||||
from IPython.core.interactiveshell import InteractiveShell, InteractiveShellABC | ||||
class ZMQInteractiveShell(InteractiveShell): | ||||
"""A subclass of InteractiveShell for ZMQ.""" | ||||
def system(self, cmd): | ||||
cmd = self.var_expand(cmd, depth=2) | ||||
Brian Granger
|
r2774 | sys.stdout.flush() | ||
sys.stderr.flush() | ||||
Brian Granger
|
r2773 | p = Popen(cmd, shell=True, stdout=PIPE, stderr=PIPE) | ||
for line in p.stdout.read().split('\n'): | ||||
if len(line) > 0: | ||||
print line | ||||
for line in p.stderr.read().split('\n'): | ||||
if len(line) > 0: | ||||
print line | ||||
return p.wait() | ||||
InteractiveShellABC.register(ZMQInteractiveShell) | ||||