Unexepcted behavior from read and cat
Paul Schmehl
pauls at utdallas.edu
Mon May 12 18:59:48 UTC 2008
I created a small list of IPs that I wanted to do digs on (because I'm lazy and
don't want to do them one at a time.)
I then wrote the following on the commandline:
% dig +short -x `cat iplist`
The results was an answer for the first line only.
So, I thought read line would do the trick. I tried this:
% dig +short -x `(read line; echo $line; while read line; do echo $line; done)
< iplist`
Same result.
I even tried:
% dig +short -s `cat iplist | awk '{print $1}'`
Same result. (Yes, I know, why do twice the work to get the same answer, but I
was desperate.)
WTF? Why do these utilities, which usually read all the lines in a file now
only work once when run through dig? Is there a way to feed dig a list of IPs
and have it return each and every one of them?
I tried dig +short -x -f iplist, but that returns nothing at all.
Sure, I can edit the file and prepend +short -x to each line, but by then I
might as well just do them individually.
What am I missing?
--
Paul Schmehl (pauls at utdallas.edu)
Senior Information Security Analyst
The University of Texas at Dallas
http://www.utdallas.edu/ir/security/
More information about the freebsd-questions
mailing list