2013-02-10 42 views
0

我需要用C/C++編寫一個程序,要求用戶輸入inode編號,然後返回所有inode標頭字段和信息。我不熟悉linux系統和命令。我找到了一些命令,並嘗試了不同的東西,不像我需要的那樣工作。C程序:通過inode編號獲取inode標頭字段和信息

find -inum inodenumber 

會給我包含指定數字的文件的路徑。我需要的所有信息都來自istat(根據我的研究),但我無法實現它的工作。 Im做

istat FILENAME.jpg 

我得到的迴應:

缺少圖像名稱和/或地址 用法:國家統計局[-B NUM] [-f文件系統類型] [-i ingtype] [-b dev_sector_size] [ -o imgoffset] [-z zone] [-s seconds] [ivV] image inum ...

我需要做什麼?

+0

真的很寬泛的問題。 – Alex 2013-02-10 21:54:12

+0

你可以用'ls -i file'或'stat --format%i file'獲取文件的inode號碼 – harpun 2013-02-10 22:01:29

回答

0

當然運行man istat

通常,您可以始終通過運行man從終端獲得幫助。

1

istat只適用於磁盤映像,不適用於活動文件系統。

Linux中沒有任何系統調用可以通過inode編號在活動文件系統中查找文件。

+0

感謝您的信息。如果我想獲得以下inode信息(文件所有者標識符,文件類型,文件訪問權限,文件訪問時間,文件鏈接數目,目錄,文件大小),您建議使用什麼命令?我唯一遇到的是istate。 – user1733552 2013-02-11 02:40:34

+0

找到文件和'stat'的路徑。或者,地獄,'ls -l'。 – duskwuff 2013-02-11 03:48:08

+0

的要求是通過inode編號(沒有文件名或路徑)我試着做一個stat和inode編號的組合,例如: stat INODENUMBER 並沒有運氣。 – user1733552 2013-02-11 04:24:52

0

嘗試使用inode編號運行find,然後使用它生成的文件名與stat