使用脚本终止同一会话中的多个进程的脚本

使用脚本终止同一会话中的多个进程的脚本

如何使用 bash 或 powershell 脚本终止在多个会话中运行的进程?

答案1

在安装了 powershell 的 Windows 机器上,您只需执行以下操作:

get-process PROCESS_NAME | stop-process

答案2

Bash 替代品

pgrep killus | while read p; do kill -9 $p; done

终止所有名为 killus 的进程

答案3

您是否希望实现此自动化,还是仅希望有一个可用的工具,您可以通过名称手动终止进程的多个实例,而不管任何实例在哪个用户会话中运行?我假设是后者,以下内容应该可以实现这一点。

在 Windows 上,Sysinternals 的“pskill”实用程序无可匹敌。获取 SysInternals 套件,解压,然后在命令提示符下简单地使用即可pskill theprocessname对相应可执行文件的所有实例进行深度六级。

以下 bash 脚本将在 Linux 上提供类似的功能;我将让用户弄清楚如何循环它直到不再存在实例:

#!/bin/bash
if [ $1 -eq ""]; then
echo "Usage : ./pkill.sh <process name>"
else
get_proc=`ps -e -o pid,command | grep $1`
echo $get_proc > get_it
get_pid=`gawk -F" " '{ print $1 }' get_it`
kill -9 $get_pid
fi

(剧本直接摘自http://www.linuxweblog.com/kill-process-name,但为了方便后人阅读,我将其粘贴在这里,因为我讨厌在 StackExchange 网站上的答案中找到死链接。)

希望这可以帮助!

相关内容