如何使用 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 网站上的答案中找到死链接。)
希望这可以帮助!