如何找出已打开文件的文件偏移量?


26

我的问题是,有了它, lsof -p pid 我可以找出进程ID为pid的进程的打开文件列表。但是有没有办法找出每个访问文件的文件偏移量?

请给我一些建议吗?

Answers:


37

在Linux上,你可以找到的文件描述符的位置N过程中PID/proc/$PID/fdinfo/$N。例:

$ cat /proc/687705/fdinfo/36
pos:    26088
flags:  0100001

同一文件可以使用多个文件描述符在不同位置多次打开,因此如果存在多个文件描述符,则必须选择一个相关文件。使用:

$ readlink /proc/$PID/fd/$N

知道对应的文件描述符附加到的文件是什么(它可能不是文件,在这种情况下符号链接是悬挂的)。


1
您的回答很好。
Ta Thanh Dinh 2012年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.