gpt4 book ai didi

linux - ./在 linux 中的命令名称是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 12:42:20 24 4
gpt4 key购买 nike

我正在使用从 here 获得的以下脚本杀死具有高 CPU 使用率的进程:

#!/bin/bash

# tries to kill process with highest CPU load
# (if it is part of a specified list of troublemakers)

TROUBLEMAKERS="java Rscript"


sleep 1 # wait a few seconds (just as a precaution)

TOPPROCESS=$(top -b -n 1 | sed 1,6d | sed -n 2p)
TOPPID=$(echo "$TOPPROCESS" | awk '{print $1}')
TOPNAME=$(echo "$TOPPROCESS" | awk '{print $12}')

if [[ "$TROUBLEMAKERS" == *"$TOPNAME"* ]]
then
echo "Cause of high CPU load: "$TOPNAME" ("$TOPPID")"
echo "In troublemaker list. Killing..."
kill -9 $TOPPID
else
echo "Cause of high CPU load: "$TOPNAME" ("$TOPPID")"
echo "Not in troublemaker list. Exiting..."
exit 1
fi

exit 0

可以看出,TROUBLEMAKERS 包含一个可能导致高 CPU 负载的进程列表。例如,如果我执行命令 java myfile 并且此命令占用 CPU,它将被杀死。

现在,如果我执行 ./anotherfile,我需要在 TROUBLEMAKERS 中输入什么进程名称,它将生成包含 ./ 的命令高 CPU 使用率被终止?

输入 TROUBLEMAKERS="java Rscript ./" 不起作用。

最佳答案

你可以试试,kill -9 < pid# > ,这通常会终止一个进程,无论变量是什么。

关于linux - ./在 linux 中的命令名称是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39797977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com