prova questo:

codice:
#!/bin/bash

while read line; do
  IP=`ping -c 1 $line | grep PING | cut -d " " -f 3`
  echo ${IP:1:${#IP}-2} >> file.out
done < $1
prende in ingresso un nome di file, contenente un'hostname per riga, restituisce file.out con un IP per riga

edit: Risolto: avevo messo un hostname invece che la variabile line