0

我必须制作一个 bash 脚本来踢出/proc/$pid/smaps以下信息,而不是:

total memory: 2mb

Memory resident: 3kb

private memory + shared: 3kb

Private total memory: 5kb

如何访问数据并添加 Cantiades?如果我做了一个cat / proc / $ pid / smaps给我文件的所有行并且不知道如何只选择那些你想要的。

4

1 回答 1

1

您可以使用grep模式匹配来获取特定行,例如:

grep -e ^Private -e ^Rss -e ^Pss /path/to/proc

一种等效、更短但便携性较差的方式:

grep -E '^(Private|Rss|Pss)' /path/to/proc

您可以使用sed按行号打印特定行:

# print 5th line
sed -ne 5p
# print from 5th line until the end of file
sed -ne '5,$p'
# print everything except the 5th line (= delete the 5th line)
sed -e 5d

您可以使用tail从第二行打印到文件末尾(= 忽略第一行):

tail +2 /path/to/proc

我希望这能满足您的需求。

于 2013-10-18T21:45:52.127 回答