lpr via subprocess in 2.4


L

loial

I am am trying to run the following command via subprocess

lpr -P printqueue filetoprint

I cannot seem to get it to work and return stderr

I think the issue is how to specify the arguments

I am trying

subprocess.Popen(['lpr -P' ,'laserlpr','/etc/hosts'], shell=False)

but get error :

Traceback (most recent call last):
File "testopen.py", line 6, in ?
subprocess.Popen(['lpr -P' ,'laserlpr','/etc/hosts'], shell=False)
File "/usr/python2.4/lib/python2.4/subprocess.py", line 558, in __in
it__
errread, errwrite)
File "/usr/python2.4/lib/python2.4/subprocess.py", line 991, in _exe
cute_child
raise child_exception
OSError: [Errno 2] No such file or directory
 
Ad

Advertisements

P

Peter Otten

loial said:
I am am trying to run the following command via subprocess

lpr -P printqueue filetoprint

I cannot seem to get it to work and return stderr

I think the issue is how to specify the arguments

I am trying

subprocess.Popen(['lpr -P' ,'laserlpr','/etc/hosts'], shell=False)

This looks for an executable called "lpr -P"; try

subprocess.Popen(['lpr', '-P' ,'laserlpr','/etc/hosts'], shell=False)
but get error :

Traceback (most recent call last):
File "testopen.py", line 6, in ?
subprocess.Popen(['lpr -P' ,'laserlpr','/etc/hosts'], shell=False)
File "/usr/python2.4/lib/python2.4/subprocess.py", line 558, in __in
it__
errread, errwrite)
File "/usr/python2.4/lib/python2.4/subprocess.py", line 991, in _exe
cute_child
raise child_exception
OSError: [Errno 2] No such file or directory
 
L

loial

Thanks...that worked.

I have also been trying to get the return code and standard error.

How do I access these?

#!/usr/bin/python
import os
import subprocess
process=subprocess.Popen(['lpr', '-P' ,'raserlpr','/etc/hosts'],
shell=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

print process.communicate()








loial said:
I am am trying to run the following command via subprocess
lpr -P printqueue filetoprint
I cannot seem to get it to work and return stderr
I think the issue is how to specify the arguments
I am trying
subprocess.Popen(['lpr -P' ,'laserlpr','/etc/hosts'], shell=False)

This looks for an executable called "lpr -P"; try

subprocess.Popen(['lpr', '-P' ,'laserlpr','/etc/hosts'], shell=False)


but get error :
Traceback (most recent call last):
  File "testopen.py", line 6, in ?
    subprocess.Popen(['lpr -P' ,'laserlpr','/etc/hosts'], shell=False)
  File "/usr/python2.4/lib/python2.4/subprocess.py", line 558, in __in
it__
    errread, errwrite)
  File "/usr/python2.4/lib/python2.4/subprocess.py", line 991, in _exe
cute_child
    raise child_exception
OSError: [Errno 2] No such file or directory- Hide quoted text -

- Show quoted text -
 
Ad

Advertisements

J

James Mills

I have also been trying to get the return code and standard error.

p = Popen("..., stderr=PIPE)

Look up the docs for subprocess.Popen

cheers
James
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top