如何通過只知道文件的inode來檢索bash中的文件內容?如何在bash中通過inode獲取文件內容?
1
A
回答
1
如果你有find (GNU findutils)
和訪問find
不的POSIX find
,你可以用它-inum
選擇它,
-inum n
File has inode number n. It is normally easier to use the
-samefile test instead
只是用它與-exec
選項一起打開使用cat
的文件,
find . -inum 1346087 -exec cat {} \;
假設inode
我的文件的值爲sample.txt
是
ls -id sample.txt
1346087 sample.txt
2
您無法通過索引節點訪問文件,因爲這會破壞通過權限訪問控制。例如,如果您沒有遍歷目錄的權限,則無論文件權限如何,都無法訪問該目錄中的任何文件。如果您可以通過inode訪問文件,則會繞過目錄權限。
有一些方法可以通過inode編號獲取文件的路徑或名稱,例如使用find
。一旦你獲得了一個文件路徑,你可以使用任何常規工具。
find
有一個inum
參數用於通過inode查找文件。這裏有一個例子:
find -inum 1704744 -exec cat {} \;
這將打印索引節點1704744
文件的內容,假設它位於當前目錄或它的一個子。
注意:ls
也有一個-i
選項以獲取與文件關聯的inode。
2
獲取的inode與EXT2/EXT3/EXT4文件系統:
inode=262552
device=/dev/sda1
sudo debugfs -R "ncheck $inode" $device 2>/dev/null
輸出(例如):
Inode Pathname 262552 /var/log/syslog
要顯示文件的內容:
sudo debugfs -R "ncheck $inode" $device 2>/dev/null | awk '/[1-9]/ {print $2}' | xargs cat
1
便攜,但是進展緩慢方法是使用find -inum ...
獲取給定inode的文件名,並在下一步中使用找到文件名。
如果您只需要該文件的content
(通過inode編號),就存在一些文件系統/操作系統特定的解決方案。
對於MacOS的是簡單的:
inode=48747714
eval "$(stat -s "/Volumes/volume_name")"
cat /.vol/$st_dev/$inode
例如在OS X的HFS文件系統存在僞目錄/.vol
,您可以使用由它們的索引節點號訪問文件的內容爲:在/Volumes
/.vol/device_id/inode_number
的device_id
是從stat
對於給定的volume_name
獲得,(檢查ls /Volumes
)。
相關問題
- 1. 在XV6中通過名稱獲取目錄/文件的dinode/inode
- 2. 如何通過AJAX自動獲取文件的文件內容?
- 3. 通過PHP獲取文件內容cURL
- 4. 通過FileReader()獲取文件內容JavaScript
- 5. 通過inode打開文件
- 6. 如何通過java獲取ASPX文件的內容?
- 7. 如何通過GitLab REST API獲取文件的原始內容?
- 8. 如何通過提交的SHA獲取文件和內容
- 9. 如何通過https獲取隱藏文件的內容?
- 10. UNIX內核如何從文件名獲取inode?
- 11. 如何通過c中的inode值獲取目錄名?
- 12. 通過URI獲取內容
- 13. 如何通過電子郵件獲取MySQL中的內容?
- 14. 如何在Laravel 4中獲取通過POST發送的文件的內容?
- 15. 可能通過bash從在線.txt文件中獲取文本?
- 16. 如何在Ajax中通過簡碼獲取內容
- 17. 在TinyMCE 4.0中,如何通過id獲取textarea的內容?
- 18. 目錄Inode vs普通文件Inode
- 19. 如何通過文本內容獲取HTML DOM路徑?
- 20. 如何從uploadfilefield獲取文件內容?
- 21. 如何獲取文件內容
- 22. 如何獲取文件內容的ParcelFileDescriptor?
- 23. bash腳本過濾文件的內容
- 24. 如何通過在內核中創建struct文件來獲取文件名?
- 25. 在內容中獲取文件的URL
- 26. 在php中獲取文件內容
- 27. 如何通過的jQuery + Ajax獲得所選文件的內容
- 28. 如何通過xml簽名文件提取「原始」內容
- 29. 通過VBA獲取laccdb文件的內容
- 30. 通過UDP傳輸文件內容後獲取垃圾字符
您是否嘗試爲此找到答案?你能提供一個你正在尋找和輸入和輸出的例子嗎? – Inian