#!/bin/bash
ip_ext=`wget -qO - icanhazip.com`
ip_int=`cat /home/miko/ip.txt`
if [ $ip_ext != $ip_int ];
then
sed -i 's/$ip_int/$ip_ext/g' *
fi
Basicamente el script es que compruebe que la IP externa es la que tengo en un archivo, y si no, pues la cambia en todos los archivos del directorio. Las dos variables funcionan, es decir, hago "echo $ip_ext" y me da la ip externa y lo mismo con ip_int pero al sed no le gustan las variables. Cuando hago manualmente " sed -i 's/a.b.c.d/z.x.v.b/g' * " si me lo cambia sin problemas. El fi tambien funciona porque si sustituyo el sed por un echo "Diferente", cuando es diferente me muestra el echo y si no, pues no xD
A ver si vosotros sabeis que es...
Muchas gracias.