Skip to content

Instantly share code, notes, and snippets.

@kmaglione
Created January 2, 2012 01:45
Show Gist options
  • Save kmaglione/1548950 to your computer and use it in GitHub Desktop.
Save kmaglione/1548950 to your computer and use it in GitHub Desktop.
import os
import signal
import subprocess
def call(*args, **kwargs):
background = kwargs.pop('background', False)
input = kwargs.pop('input', None)
stdin = subprocess.PIPE if input else None
p = subprocess.Popen(args, stdin=stdin,
preexec_fn=lambda: signal.signal(signal.SIGPIPE, signal.SIG_DFL),
cwd=os.environ['HOME'], close_fds=True, **kwargs)
if not background:
return p.communicate(input)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment