自动杀掉linux进程的shell脚本
时间: 2023-10-14 07:24:55 浏览: 110
以下是一个简单的 shell 脚本,可用于自动杀掉 Linux 进程:
```
#!/bin/bash
# 输入进程名
echo "请输入要杀死的进程名:"
read processName
# 查找进程 ID
pid=$(ps aux | grep $processName | grep -v grep | awk '{print $2}')
# 杀掉进程
if [ -z "$pid" ]; then
echo "进程 $processName 未找到"
else
echo "正在杀死进程 $processName ,进程 ID 为 $pid"
kill -9 $pid
echo "进程 $processName 已被杀死"
fi
```
脚本中,首先会要求用户输入要杀死的进程名,然后通过 `ps aux` 命令查找进程 ID,再使用 `kill` 命令杀死进程。如果未找到对应进程,则输出提示信息。请注意,杀死进程需要使用 root 权限。
相关问题
linux根据端口杀掉进程sh脚本
要通过端口来杀掉进程,可以使用Linux的命令行工具`lsof`和`kill`来实现。下面是一个简单的Shell脚本示例,可以根据指定的端口号来杀掉对应的进程:
```shell
#!/bin/bash
# 要杀掉的端口号
port=$1
# 使用lsof命令查找指定端口的进程ID
pid=$(lsof -i :$port | awk 'NR==2 {print $2}')
if [ -z "$pid" ]; then
echo "端口 $port 上没有运行的进程."
else
# 使用kill命令杀掉进程
kill $pid
echo "成功杀死端口 $port 上的进程."
fi
```
使用这个脚本,你可以通过命令行传入指定的端口号,例如`./kill_process.sh 8080`。如果该端口上有运行的进程,脚本将会杀掉它,并输出成功的提示信息;如果没有运行的进程,脚本将会给出相应的提示。请注意,你需要在执行脚本之前确保你有足够的权限来杀掉进程。
Linux shell脚本动态匹配th-adn-xxx.jar服务是否存在,如果存在,杀掉进程,并重启最新的进程
在Linux shell脚本中,你可以通过`ps aux`命令查找与特定jar文件相关的进程,然后使用`kill`命令杀死旧的进程,接着利用`nohup`或`screen`等工具以守护进程的方式运行新的jar文件。这里是一个简单的示例:
```bash
#!/bin/bash
# 定义要检查的服务名和jar文件路径
service_name="th-xxx.jar"
jar_path="/path/to/th-adn-xxx.jar"
# 查找并列出所有包含指定jar名的进程ID
ps_output=$(ps -ef | grep $jar_path)
# 如果有进程存在
if [ ! -z "$ps_output" ]; then
# 杀死所有包含jar名的进程
ps_ids=($ps_output | awk '{print $1}')
for pid in "${ps_ids[@]}"; do
kill -9 $pid
done
# 等待一段时间让进程结束(可根据实际情况调整)
sleep 5
# 使用nohup启动最新版本的jar文件
nohup java -jar $jar_path &>/dev/null & echo $! > service.pid
echo "Service restarted with PID: $(cat service.pid)"
else
echo "No service found with jar file $jar_path."
fi
# 添加
阅读全文