Script para detectar conexion de red

Imagen de ciber10go

Forums: 

Hola a todos!
Quería consultarles si alguno sabe como puedo hacer para detectar si mi equipo tiene conexion a internet, y de esta forma ejecutar un comando.
La idea es que detecte si hay conexion y en ese caso realice un mount de un Network File System NFS.
La estructura básica de lo que necesito es la siguiente:

if [CONDICION ]; then
mount -t nfs -o nolock,rsize=4096 xx.xx.xx.xx:/home/ /mnt/nfs
fi

Desde ya espero sus sugerencias y opiniones.

Saludos,
ciber10go

Illegal instruction

Imagen de ciber10go

Hola deathUser, gracias por responder.
No respondí antes, ya que estuve haciendo varias pruebas y no puedo dar con la tecla.
Tu código me sirvió mucho, ya que pude corroborar que en mi Debian funciona bien, con el agregado de comillas a $PING, pero en el sistema que tengo que usarlo no me funciona.

Es un sistema embedido, que corre un uClinux, es decir, un linux reducido.
Posiblemente el shell que tengo (Minix Shell) no puede procesar los operadores '|' o variables de script (PING), ya que me da un error de:


"Illegal instruction"

al ejecutar el código:


PING=`ping -c 1 xx.xx.xx.xx | grep -c "64 bytes"`
if [ "$PING" -eq "1" ]; then
echo Ok
else
echo Wrong
fi

Siendo que en mi Debian funciona sin inconvenientes.
Seguiré buscando alguna otra forma, o ver si este shell me sirve.

Desde ya muchas gracias :)
ciber10go

Illegal instruction

Imagen de acl

Illegal instruction significa que la instrucción actual al cpu no corresponde con la arquitectura exacta que tienes en hardware. A veces pasa cuando compilas a una subarquitectura específica o cuando tienes código de máquina en pseudo-ensamblador que no corresponde. ¿Compilaste tú el shell? Tal vez necesites flags un poco más conservadores. ¿Qué cpu usas?

Problema resuelto

Imagen de ciber10go

Ya pude solucionar el inconveniente. El código que publiqué es correcto.
El problema fue que al recompilar mi kernel, para ver si traia conflictos con alguna otra aplicacion, había cambiado mi shell.
Ahora funciona todo ok.

Desde ya muchas gracias! :)
ciber10go