我在谷歌上几乎找不到任何可以帮助我回答这个问题的东西。我认为它正在将其他一些参数传递给ls -i
?
答案1
是的,参数 -i 将打印 ls 命令列出的每个文件或目录的索引节点号。当您想打印目录的索引节点号时,我建议使用参数 -d 仅列出目录。要打印目录 /path/to/dir 的 inode 编号,请使用以下命令行:
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
答案2
这也适用于 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
答案3
-i
您可以使用选项找到文件和目录的索引节点
ls -id /home/user/dir
您可以获取系统消耗的inode信息
df -hi
答案4
在 C++ 中:
#include <sys/stat.h>
ulong getInode( const QString &path )
{
struct stat st;
stat( path.toUtf8(), &st );
return st.st_ino;
}
这应该适用于文件和文件夹。