linux - simbolico - ¿Hay alguna manera de ver el contenido real de un enlace simbólico?
no se permiten enlaces fuertes para directorios (4)
Cuando tu lo hagas
cat some-symlink-to-some-real-file
muestra el contenido del archivo real, no lo que está dentro del enlace simbólico. ¿Hay una manera de ver lo que realmente hay en ella?
Con respecto a la página del manual http://man7.org/linux/man-pages/man7/symlink.7.html enlace simbólico es un archivo regular (con un indicador especial) con ruta al objetivo en su contenido. Así que puedes copiar el enlace simbólico a la partición FAT y leer el contenido allí.
El ls -l
le mostrará que:
$ ls -l foo
lrwxrwxrwx 1 user group 11 2010-12-31 19:49 foo -> /etc/passwd
O el comando readlink
:
$ readlink foo
/etc/passwd
Entonces, el enlace simbólico foo
apunta a la ruta /etc/passwd
.
Puede llamar a la readlink(2)
, que colocará el nombre del enlace en un búfer.
Tenga en cuenta que el resultado tiene una longitud (almacenada en el valor de retorno) en lugar de estar terminada en NUL. Entonces, si desea usarlo como una cadena, agregue un NUL usted mismo.
La mayoría de los lenguajes de scripts de nivel superior, como perl o python, proporcionarán un contenedor de enlace de lectura que se convierte al tipo de cadena apropiado para el idioma habitual, por lo que no le molestarán detalles como la terminación NUL.
Tratar
find . -type l -exec ls -la {} /;