On Monday, Oct 9th 2006 at 13:12 +0100, quoth Dave Mitchell: =>On Mon, Oct 09, 2006 at 12:43:22PM +0100, Dan Track wrote: =>> have a script that does the following: =>> =>> cat /tmp/file | while read rpm =>> =>> what I would like to do is to remove the "|" pipe command but keep the =>> "while read rpm" part while also somehow cat the contents of the file =>> into the "while read rpm" line, how can I do that? => => ( => while read rpm; do => ... => done => ) < /tmp/file => => Using parens will create a child. You can use curlybraces instead to get the same grouping without the child { while read rpm; do ... done } < $tmp But there's no need since you can just apply the redirection to the while loop itself. while read rpm; do ... done < $tmp When I review shell code, one of the things I always look for is unnecessarey processes from parens. -- Time flies like the wind. Fruit flies like a banana. Stranger things have .0. happened but none stranger than this. Does your driver's license say Organ ..0 Donor?Black holes are where God divided by zero. Listen to me! We are all- 000 individuals! What if this weren't a hypothetical question? steveo at syslang.net