user140452
user140452

Reputation: 133

Append text to output of shell script

I want to do dig for huge number of IPs and write out put of the command in one single line(in the format of paloalto firewall commands) but my script gives response like below

servername.
ip-netmask 10.224.161.242

My requirement is: set address <servername> ip-netmask <ip>

#!/bin/bash

filename='ip_in.txt' # name of file with IPs to handle
nameserver='10.225.9.18' # nameserver to query

for ip in `cat $filename`
do

dig @$nameserver -x $ip +short
echo "ip-netmask $ip"

done

How do I achieve this?

Upvotes: 1

Views: 238

Answers (1)

keithpjolley
keithpjolley

Reputation: 2263

for ip in $(cat $filename)
do
  servername=$(dig $nameserver -x $ip +short | sed 's/\.$//')
  echo "set address $servername ip-netmask $ip"
done

Upvotes: 2

Related Questions