Bạn có thể chiếm quyền điều khiển htop
của s
lệnh. Trong htop
, nhấn s
cầu khẩn strace -p <the-pid-of-the-selected-process>
.
Sau đó, những gì bạn có thể làm là tạo một strace
lệnh có chứa một cái gì đó như:
#! /bin/sh -
pids=$(ps -eo pid= -o ppid= |
awk -v exclude="$PPID" -v pid="$2" '
function descends(p) {
if (p == exclude) return 0
if (p == pid) return 1
if (p <= 1) return 0
return descends(parent[p])
}
{ parent[$1]=$2 }
END {
for (p in parent)
if (descends(p))
print p
}'
)
if [ -z "$pids" ]; then
echo >&2 "No process found to kill"
else
echo >&2 Killing $pids
kill $pids
fi
Và đặt nó trong một số thư mục như ~/.htop-hijack
, và gọi htop là:
PATH=~/.htop-hijack:$PATH htop
Sau đó, nhấn s
sẽ gọi lệnh đó thay vì strace
(bạn cần nhấn Esc để quay lại màn hình chính sau đó).