学习使用shell脚本获取进程号并杀死进程

学习使用shell脚本获取进程号并杀死进程

#!/bin/bash
process_name="qipa250_process_name"
pid=$(ps -ef | grep "$process_name" | grep -v grep | awk '{print $2}')
if [[ -n $pid ]]; then
    echo "Killing process $pid"
    kill -9 $pid
else
    echo "Process $process_name not found"
fi
### 如何通过 Shell 脚本查找 Python 进程 PID 条件性杀死指定进程 以下是一个完整的 Shell 脚本示例,展示如何查找特定的 Python 进程根据条件终止它们: #### 示例脚本 ```bash #!/bin/bash # 定义要匹配的关键字(可以根据实际情况修改) KEYWORD="script.py" # 使用 pgrep 查找包含关键字的 Python 进程 ID 列表 PIDS=$(pgrep -fl "python.*$KEYWORD" | awk '{print $1}') # 如果找到任何符合条件的进程,则逐一处理 if [ ! -z "$PIDS" ]; then echo "Found the following PIDs matching '$KEYWORD':" echo "$PIDS" # 遍历所有找到的 PID,询问用户是否终止 for PID in $PIDS; do read -p "Do you want to kill process with PID $PID? (y/n): " CHOICE if [[ "$CHOICE" == "y" || "$CHOICE" == "Y" ]]; then kill -9 $PID && echo "Process $PID has been terminated." || echo "Failed to terminate process $PID." fi done else echo "No processes found matching '$KEYWORD'." fi ``` --- #### 解析说明 上述脚本实现了以下几个功能: 1. **定义目标关键字**:`KEYWORD` 变量用于存储需要匹配的目标字符串。例如,在此例子中设置为 `script.py`[^2]。 2. **获取符合条件的进程列表**:利用 `pgrep` 命令结合 `-f` 参数可以模糊匹配整个命令行中的内容,而不仅仅是进程名称。随后使用 `awk` 提取对应的 PID。 3. **遍历确认终止操作**:对于每一个查找到的 PID,提示用户决定是否终止对应进程。如果用户输入 `y` 或 `Y`,则发送信号强制结束该进程;否则跳过当前项。 4. **错误处理机制**:当尝试杀掉某个进程失败时会给出相应的反馈信息。 以上方法不仅限于 Python 进程,还可以扩展到其他类型的后台服务监控与清理场景下应用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值