[CentOS] Help with at Bash script
Alexander Dalloz
ad+lists at uni-x.org
Tue Dec 2 19:19:04 UTC 2014
Am 02.12.2014 um 19:05 schrieb James B. Byrne:
> I am attempting to get a script borrowed from DJB to work on my CentOS-6.6
> box. Simplified it looks like this:
>
> tcpdump -l -n -e port 53 \
> | awk '{if ($14 ~ /A.*?/) print $15}' \
> | while read domain ; do echo $domain ; done ;
>
> The sticking point is the 'while read' construct. Run just as 'tcpdum | awk'
> I get this:
>
> english.stackexchange.com.
> www.urbandictionary.com.
> www.urbandictionary.com.
> www.urbandictionary.com.
> www.urbandictionary.com.
> api.mywot.com.
> a.udimg.com.
> a.udimg.com.
> fonts.googleapis.com.
> . . .
>
> Run with the 'while read $domain ; do echo ' pipe nothing appears whatsoever.
> What am I doing wrong?
while read domain; do
echo ${domain}
done < <(tcpdump -l -n -e port 53 | awk '{if ($14 ~ /A.*?/) print $15}')
The "echo ${domain}" part is certainly just a simplification of a more
complex command to run on the variable. Else it would be pointless as
awk is printing out the domain field 15.
Alexander
More information about the CentOS
mailing list