Encontrar links circulares

Imagen de Orton
0 puntos

Hola a todos;

Necesito hacer un script k busque links circulares a partir d un directorio. Pero no se muy bien como empezar. Habia pensado en usar un find recursivo, xo no veo muy claro como ir mostrando los links hasta llegar al softlink;

Alguien podria exarme una mano??

Gracias;;

Imagen de Orton
+1
0
-1

Quisiera especificar un poco mas, ya k en el post anterior no deje muy claro lo k pasaba;

El script debe encontrar enlaces circulares y he pensado en lo siguiente:

find -L | while read ruta; do
echo "Ruta: $ruta"
stat -L -c %i%F $ruta | read inodo tipo
echo "Estado: $inodo tipo"
...

Y despues compararia el numero de inodo con los anteriores. 
Pero el read no m funciona y no almacena nada, incluso si pongo solo una variable (....| read linea).

¿Donde esta el error?

Gracias;;

+1
0
-1
Imagen de joseluis
+1
0
-1

Parece que al read no se le puede enchufar valores mediante tuberías :(

Otra posibilidad es que sustituyas la línea

stat -L -c %i%F $ruta | read inodo tipo 

por

inodo=`stat -L -c %i $ruta`
tipo=`stat -L -c %F $ruta`

Nota sobra la `
La comilla ` no es ni la doble " ni la sencilla ', se trata del acento grave (aunque tal vez ya lo sepas).


Lectura obligada:
+1
0
-1

Fdo. Forense asesino, Censor fundamentalista, Fustigador de novatos y Patético maleducado

Imagen de joseluis
+1
0
-1

Otra posibilidad usando el read podría ser volcar la salida del stat a fichero y usarla como entrada para el read, pero a mí me parece más sucio porque generas ficheros temporales que luego habría que borrar:

stat -L -c "%i %F" $ruta > mifichero.tmp
read inodo tipo < mifichero.tmp
rm mifichero.tmp

Lectura obligada:
+1
0
-1

Fdo. Forense asesino, Censor fundamentalista, Fustigador de novatos y Patético maleducado

Imagen de Orton
+1
0
-1

Okis, lo solucioné con la opcion de los acentos y ya me va

Gracias;;

+1
0
-1