The way I did this was to use sys.stdin.readlines() to get the output from the pipe.
Here is the program:
[code] import sys, glob args = sys.stdin.readlines() # found on the net pat = sys.argv[1] for i in args: if (i.find(pat) != -1): print i, [/code]
My question is am I getting the output from the pipe in the correct way ? The way Im doing it works (so far) but should I be doing it another way ?
unless you want the output for some other reason, a more idiomatic way is:
for line in sys.stdin.readlines(): # handle the line
I tend to use xreadlines() which does not read the entire input at once. For stdin this make sense, you have no idea how much data will be piped in.
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor