我运行了一个php脚本,让我们使用“mytestscript.php”作为例子。
它将连续运行几个小时。如何从终端(UNIX)命令行停止它?
答案 0 :(得分:6)
假设它在后台运行,在您的用户ID下:使用ps
查找命令的PID。然后使用kill [PID]
来阻止它。如果kill
本身不能胜任,请执行kill -9 [PID]
。
如果它在前台运行,Ctrl-C(控制C)应该停止它。
阅读ps
命令的文档并熟悉其选项。这是一个非常有用的命令。
答案 1 :(得分:6)
您可以尝试使用ps -e | grep php
查找名称中包含“php”的所有进程。之后,您可以执行kill <PID>
,将<PID>
替换为ps命令为您提供的数字。
答案 2 :(得分:1)
如果您想要自动化解决方案,请尝试此操作 -
1.创建一个新的shell脚本 - vi killer.sh
2.添加以下内容
#!/bin/bash
while true
do
sleep $1
ps -ef | grep mytestscript.php | grep -v grep | awk '{print $2}' | xargs kill -9
done
3.Grant可执行权限chmod +x killer.sh
4.以nohup ./killer.sh <time to sleep before killing> &
5.离开并前往海滩!
答案 3 :(得分:0)
您始终可以找到正在运行的进程的进程ID。 “ps -ef | grep mytestscript.php”。查看输出并记下该过程的pid。使用kill pid来杀死进程。