Re: piping into a python script
- From: Paddy <paddy3118@xxxxxxxxxxxxxx>
- Date: Thu, 24 Jan 2008 07:46:24 -0800 (PST)
On Jan 24, 3:25 pm, Marc 'BlackJack' Rintsch <bj_...@xxxxxxx> wrote:
On Thu, 24 Jan 2008 17:17:25 +0200, Donn Ingle wrote:
Given these two examples:
1.
./fui.py *.py
2.
ls *.py | ./fui.py
How can I capture a list of the arguments?
I need to get all the strings (file or dir names) passed via the normal
command line and any that may come from a pipe.
There is a third case:
3.
ls *.jpg | ./fui.py *.png
Where I would be gathering strings from two places.
I am trying to write a command-line friendly tool that can be used in
traditional gnu/linux ways, otherwise I'd skip the pipe stuff totally.
I have tried:
1. pipedIn = sys.stdin.readlines()
Works fine for example 2, but example 1 goes into a 'wait for input' mode
and that's no good. Is there a way to tell when no input is coming from a
pipe at all?
Usually Linux tools that can get the data from command line or files treat
a single - as file name special with the meaning of: read from stdin.
So the interface if `fui.py` would be:
1. ./fui.py *.a
2. ls *.a | ./fui.py -
3. ls *.a | ./fui.py *.b -
Ciao,
Marc 'BlackJack' Rintsch
If X.a X.b Y.a Y.b are all files whose contents are to be processed
then
To process all files:
./fui.py *.a *.b
Or:
./fui.py `ls *.a *.b`
To process one file from a pipe unix usually does:
cat X.a | ./fui.py -
To get the filenames from stdin would usually need a command line
switch telling fui.py to read a file *list* from stdin. For verilog
simulators for example you have the -f switch that says insert further
command line arguments from the file name in the next argument, so you
could do:
ls *.a | ./fui.py -f - *.b
For equivalent functionality to my first example.
- Paddy.
.
- Follow-Ups:
- Re: piping into a python script
- From: Donn Ingle
- Re: piping into a python script
- References:
- piping into a python script
- From: Donn Ingle
- Re: piping into a python script
- From: Marc 'BlackJack' Rintsch
- piping into a python script
- Prev by Date: Connecting to Sql Server from Python
- Next by Date: Re: A global or module-level variable?
- Previous by thread: Re: piping into a python script
- Next by thread: Re: piping into a python script
- Index(es):
Relevant Pages
|