¿Cómo encuentro el inodo de cualquier directorio?

¿Cómo encuentro el inodo de cualquier directorio?

Literalmente no hay nada en Google que pueda encontrar que me ayude a responder esta pregunta. ¿Supongo que le está pasando algún otro parámetro ls -i?

Respuesta1

Sí, el argumento -i imprimirá el número de inodo de cada archivo o directorio que enumera el comando ls. Como desea imprimir el número de inodo de un directorio, sugeriría usar el argumento -d para enumerar solo los directorios. Para imprimir el número de inodo del directorio /ruta/al/dir, utilice la siguiente línea de comando:

ls -id /path/to/dir

De man ls:

   -d, --directory
          list  directory entries instead of contents, and do not derefer‐
          ence symbolic links
   -i, --inode
          print the index number of each file

Respuesta2

Esto también funciona con estadísticas:

DIR=/
stat -c '%i' $DIR

Deman stat:

   -c  --format=FORMAT
          use the specified FORMAT instead of the default; output  a  new‐
          line after each use of FORMAT
[...]

   The valid format sequences for files:    
       %i     inode number

Respuesta3

Puede encontrar el inodo de archivo y directorio con -ila opción

ls -id /home/user/dir

Puede obtener información del inodo consumido de su sistema.

df -hi

Respuesta4

En c++:

#include <sys/stat.h>

ulong getInode( const QString &path )
{
        struct stat st;
        stat( path.toUtf8(), &st );
        return st.st_ino;
}

Esto debería funcionar para archivos y carpetas.

información relacionada