¿Cómo diferencian los enlaces simbólicos 'stat' y 'file'?

1

Hoy estaba haciendo mi trabajo de rutina y parece que los comandos stat y file en el terminal no muestran si un archivo es un enlace simbólico:

flow2k@myPad:dir ln -s aa.iml superlink
flow2k@myPad:dir stat superlink
16777220 11057327 lrwxr-xr-x 1 flow2k staff 0 6 "Dec  2 13:25:34 2017" "Dec  2 13:25:34 2017" "Dec  2 13:25:34 2017" "Dec  2 13:25:34 2017" 4096 8 0 superlink

¿Cómo puedo ver si algo es un enlace simbólico?

    
pregunta flow2k 02.12.2017 - 22:39

2 respuestas

2

El l en lrwxr-xr-x muestra que es un enlace (simbólico).
Utilice readlink file para mostrar dónde apunta el enlace simbólico.

La página de manual de stat indica :

  

Cuando se invoca como enlace de lectura , solo se imprime el destino del enlace simbólico. Si el argumento dado no es un enlace simbólico, readlink no imprimirá nada y se cerrará con un error.

    
respondido por el PeterVP 03.12.2017 - 17:24
2

BSD stat y file difieren de sus contrapartes de Linux, pero las versiones de BSD pueden imitar la salida de Linux. Del manual para file :

-h, --no-dereference
         option causes symlinks not to be followed (on systems that support symbolic links).

file -h /etc
/etc: symbolic link to private/etc

y del manual para stat

 -x      Display information in a more verbose way as known from some Linux distributions.

stat -x /etc
File: "/etc"
Size: 11           FileType: Symbolic Link
Mode: (0755/lrwxr-xr-x)         Uid: (    0/    root)  Gid: (    0/   wheel)
Device: 1,4   Inode: 419701    Links: 1
Access: Sun Apr 16 14:39:45 2017
Modify: Sun Apr 16 14:39:45 2017
Change: Sun Apr 16 14:41:19 2017    
    
respondido por el fd0 04.12.2017 - 13:07

Lea otras preguntas en las etiquetas