sys.stdout / sys.stderr, subprocess, redirection

Discussion in 'Python' started by Roman Neuhauser, Apr 4, 2005.

  1. Hello,

    I have a piece of code that gets run in a script that has its stdout
    closed:

    import sys
    sys.stdout = sys.stderr

    c = subprocess.Popen (...,
    stdin = subprocess.PIPE,
    stdout = subprocess.PIPE,
    stderr = subprocess.STDOUT)

    and this is what I get:

    Sending SVNR/permissions
    Transmitting file data .svn: Commit failed (details follow):
    svn: 'pre-commit' hook failed with error output:
    Traceback (most recent call last):
    (...)
    File ".../__init__.py", line 40, in run
    stderr = subprocess.STDOUT)
    File "/usr/local/lib/python2.4/subprocess.py", line 554, in __init__
    errread, errwrite)
    File "/usr/local/lib/python2.4/subprocess.py", line 986, in _execute_child
    raise child_exception
    OSError: [Errno 2] No such file or directory

    This is the child_traceback:

    File "/usr/local/lib/python2.4/subprocess.py", line 955, in _execute_child
    File "/usr/local/lib/python2.4/os.py", line 341, in execvp
    File "/usr/local/lib/python2.4/os.py", line 379, in _execvpe
    func(fullname, *argrest)
    OSError: [Errno 2] No such file or directory

    Is this a problem in subprocess (I'm using the FreeBSD port of Python-2.4
    and subprocess that comes with that release) or is this expected? If my
    expectations are broken (likely), what should the standard descriptor
    massaging look like?

    Subversion code that runs the script can be seen at
    http://svn.collab.net/viewcvs/svn/trunk/subversion/libsvn_repos/hooks.c
    (run_hook_cmd()).

    --
    How many Vietnam vets does it take to screw in a light bulb?
    You don't know, man. You don't KNOW.
    Cause you weren't THERE. http://bash.org/?255991
     
    Roman Neuhauser, Apr 4, 2005
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Mitchell L Model

    sys.stdout vs. sys.stderr

    Mitchell L Model, Jan 11, 2010, in forum: Python
    Replies:
    2
    Views:
    598
    Nobody
    Jan 11, 2010
  2. Michel Albert
    Replies:
    5
    Views:
    1,498
    Daniel Dehennin
    Oct 24, 2012
  3. Geoff Bache
    Replies:
    4
    Views:
    621
  4. unbewust
    Replies:
    6
    Views:
    256
    unbewust
    Aug 11, 2007
  5. Peter
    Replies:
    1
    Views:
    180
    -berlin.de
    Jul 19, 2007
Loading...

Share This Page