按特定地址给出 /proc/id/maps 行的实用程序

按特定地址给出 /proc/id/maps 行的实用程序

是否有一个实用程序可以从/proc/id/maps该过程中给出特定地址时为我提供特定行?

例如,当给定0x7fb4a84f6008它时,它会返回:

7fb4a84f6000-7fb4a84fd000 r-xp 00000000 00:48 20132    /lib64/libnss_compat-2.21.so

答案1

也许pmap做你想做的事:

$ sudo pmap -Ab75bf022 26746
26746:   dhclient -1 -v -pf /run/dhclient.eth5.pid -lf /var/lib/dhcp/dhclient.eth5.leases eth5
b75bf000      4K rw--- ld-2.19.so
 total        4K

或者使用地址范围和完整路径:

$ sudo pmap -p -Ab75bf022,b77bf022 26746
26746:   dhclient -1 -v -pf /run/dhclient.eth5.pid -lf /var/lib/dhcp/dhclient.eth5.leases eth5
b75bf000      4K rw--- /lib/i386-linux-gnu/ld-2.19.so
b75c0000   1732K r-x-- /sbin/dhclient
b7771000      4K r---- /sbin/dhclient
b7772000     12K rw--- /sbin/dhclient
b7775000     44K rw---   [ anon ]
 total     1796K

答案2

您可以使用awk这样做:

awk -F'[ -]' -v s=7fb4a84f6008 '$1<=s&&s<$2' /proc/id/maps

s=假设您可以按照与中出现的格式相同的格式给出搜索到的地址(在 后) maps(没有0x和具有相同的长度)。

相关内容