Как мне найти индекс любого каталога?


15

Я не могу найти в Google буквально ничего, что помогло бы мне ответить на этот вопрос. Я предполагаю, что это передает какой-то другой параметр ls -i?

Ответы:


25

Да, аргумент -i будет печатать номер инода каждого файла или каталога, который выводит команда ls. Поскольку вы хотите напечатать номер инода каталога, я бы предложил использовать аргумент -d только для вывода списка каталогов. Для печати номера индекса в каталоге / path / to / dir используйте следующую командную строку:

ls -id /path/to/dir

От 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

18

Это работает также с stat:

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

От 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

2
Я хотел бы добавить, что команда stat из FreeBSD , NetBSD , OpenBSD и OS X работает немного по-другому и stat -f '%i' $DIRдолжна использоваться.
Кристиан Чиупиту

3

Вы можете найти inode файла и директории с -iопцией

ls -id /home/user/dir

Вы можете получить информацию о потребленном иноде вашей системы.

df -hi

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.