
Não há literalmente nada no Google que eu possa encontrar que me ajude a responder a essa pergunta. Presumo que esteja passando algum outro parâmetro para ls -i
?
Responder1
Sim, o argumento -i imprimirá o número do inode de cada arquivo ou diretório que o comando ls está listando. Como você deseja imprimir o número do inode de um diretório, sugiro usar o argumento -d para listar apenas os diretórios. Para imprimir o número do inode no diretório /path/to/dir, use a seguinte linha 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
Responder2
Isso também funciona com estatí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
Responder3
Você pode encontrar o inode do arquivo e diretório com -i
a opção
ls -id /home/user/dir
Você pode obter informações do inode consumido do seu sistema
df -hi
Responder4
Em c++:
#include <sys/stat.h>
ulong getInode( const QString &path )
{
struct stat st;
stat( path.toUtf8(), &st );
return st.st_ino;
}
Isso deve funcionar para arquivos e pastas.