在linux中,我使用lsof检查文件是由哪个进程打开的。我有一个Android设备,但没有lsof命令。是否有可能找到哪个进程打开特定的文件?如何在没有lsof的情况下检查打开的文件
我将用它来验证MediaPlayer是否保留fd,但应该关闭它。
在linux中,我使用lsof检查文件是由哪个进程打开的。我有一个Android设备,但没有lsof命令。是否有可能找到哪个进程打开特定的文件?如何在没有lsof的情况下检查打开的文件
我将用它来验证MediaPlayer是否保留fd,但应该关闭它。
安装busybox,它有一个lsof命令。
我使用繁忙的箱子,但仍然得到“????”我怎么能得到的价值是任何一个不同的命令? –
您需要root访问权限。 –
即时通讯已经在root访问,命令运行并发出一个表和im期待值,但所有即时通讯都是问号“????”任何想法thanx –
穷人的lsof的是执行
ls -l /proc/[process id]/fd
不过,你需要root权限。
'ls -l/proc/*/fd'可以查看默认情况下所有打开的文件,例如lsof。 –
感谢迈克琼斯和乔恩与穷人的生命中的小费。我用它在下面上的busybox(Synology网络)来列出每个进程下分组的FD目录:
for p in [0-9]*; do ls -l /proc/$p/fd ;done
“lsof的”加到[ICS](http://androidxref.com/source/history/ system/core/toolbox/Android.mk),提交'8b9b105bc7bf6428591d55462b3e727ba7504b29'。如果它不存在于你所定位的版本中,那么将它从源头中提取出来,将所需的位撕掉并使用NDK构建它。 – Jens