Comment trouver l'inode de n'importe quel répertoire?

15

Il n'y a littéralement rien sur google que je puisse trouver qui m'aidera à répondre à cette question. Je suppose qu'il transmet un autre paramètre à ls -i?

Strobe_
la source

Réponses:

25

Oui, l'argument -i affichera le numéro d'inode de chaque fichier ou répertoire répertorié par la commande ls. Comme vous voulez imprimer le numéro d'inode d'un répertoire, je suggère d'utiliser l'argument -d pour ne lister que les répertoires. Pour imprimer le numéro d'inode dans le répertoire / path / to / dir, utilisez la ligne de commande suivante:

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
stoeff
la source
18

Cela fonctionne également avec stat:

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

De man 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
Cristian Ciupitu
la source
2
Je voudrais ajouter que la commande stat de FreeBSD , NetBSD , OpenBSD et OS X fonctionne un peu différemment et stat -f '%i' $DIRdoit être utilisée.
Cristian Ciupitu
3

Vous pouvez trouver l'inode du fichier et du répertoire avec l' -ioption

ls -id /home/user/dir

Vous pouvez obtenir des informations sur l'inode consommé de votre système

df -hi

Bâtard
la source