Jak znaleźć i-węzeł dowolnego katalogu?

15

W Google nie ma dosłownie nic, co mogłoby mi pomóc odpowiedzieć na to pytanie. Zakładam, że przekazuje jakiś inny parametr do ls -i?

Stroboskop_
źródło

Odpowiedzi:

25

Tak, argument -i wypisze numer i-węzła każdego pliku lub katalogu, który wyświetla polecenie ls. Gdy chcesz wydrukować numer i-węzła katalogu, sugerowałbym użycie argumentu -d do wyświetlenia tylko katalogów. Aby wydrukować numer i-węzła katalog / ścieżka / do / katalog, użyj następującego wiersza polecenia:

ls -id /path/to/dir

Od 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
źródło
18

Działa to również ze stat:

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

Od 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
źródło
2
Chciałbym dodać, że polecenie statyczne z FreeBSD , NetBSD , OpenBSD i OS X działa nieco inaczej i stat -f '%i' $DIRmusi być użyte.
Cristian Ciupitu
3

Możesz znaleźć i-węzeł pliku i katalogu z -iopcją

ls -id /home/user/dir

Możesz uzyskać informacje na temat zużytego i-węzła systemu

df -hi

Kundel
źródło