写一个shell脚本定期杀死一个进程
时间: 2023-05-16 22:05:59 浏览: 250
可以使用以下脚本来定期杀死一个进程:
```
#!/bin/bash
# 设置要杀死的进程名
process_name="your_process_name"
# 循环执行,每隔一定时间杀死进程
while true
do
# 查找进程是否存在
pid=$(ps -ef | grep "$process_name" | grep -v grep | awk '{print $2}')
if [ -n "$pid" ]
then
# 杀死进程
kill -9 $pid
echo "Process $process_name has been killed."
else
echo "Process $process_name is not running."
fi
# 等待一定时间
sleep 3600 # 每隔一小时执行一次
done
```
将上述脚本保存为一个文件,比如 `kill_process.sh`,然后使用 `chmod +x kill_process.sh` 命令将其变为可执行文件。接着在终端中执行 `./kill_process.sh` 即可开始定期杀死进程。
相关问题
用shell脚本写一个定时杀死进程的程序
可以使用Linux自带的crontab来实现定时杀死进程的功能。具体步骤如下:
1. 创建一个shell脚本文件,比如"kill_process.sh",并将以下代码复制到文件中:
```shell
#!/bin/bash
# 指定要杀死的进程名
process_name="your_process_name"
# 查找并杀死进程
pid=$(ps -ef | grep "$process_name" | grep -v grep | awk '{print $2}')
if [ -n "$pid" ]; then
kill -9 $pid
echo "$(date): $process_name is killed."
else
echo "$(date): $process_name is not running."
fi
```
2. 修改文件的执行权限:
```shell
chmod +x kill_process.sh
```
3. 使用crontab来定时执行脚本文件。执行以下命令来编辑crontab:
```shell
crontab -e
```
4. 在文件末尾添加以下内容,表示每5分钟执行一次脚本:
```shell
*/5 * * * * /path/to/kill_process.sh
```
其中,"/path/to/kill_process.sh"为你的脚本文件的路径。保存并退出编辑器。
5. 等待5分钟左右,脚本就会开始定时执行了。如果指定的进程名正在运行,则脚本会将其杀死。你也可以根据需要修改脚本中的进程名和定时执行的时间。
制作一个杀死jar包进程的shell脚本
可以使用以下命令杀死一个名为"example.jar"的进程:
```
kill $(ps aux | grep 'example.jar' | awk '{print $2}')
```
这个命令会先使用"ps aux"命令列出所有进程,然后使用"grep"命令过滤出包含"example.jar"的进程,最后使用"awk"命令提取出进程的PID,并使用"kill"命令杀死该进程。