在后台用进程名运行bash脚本

Shell命令
1282
linux
linux 举报
2022-07-11

有一个激活pythonvenv并在后台运行服务器的脚本,但现在我试图在启动进程时保持pid,然后在完成后用pid终止进程。然而,并不是所有的时间都是被杀的。

我的问题是,我是否可以使用一个名称运行该进程,然后在之后使用pkill name终止它?那会是什么样子


#!/bin/sh

ROOT_DIR=$(pwd)

activate(){
    source $ROOT_DIR/.venv/bin/activate
    python3 src/server.py -l & pid=$!     # <== This is the process
    python3 src/client.py localhost 8080
}

activate
sleep 10
kill "$pid"

printf "\n\nServer is done, terminating processes..."


倒序看帖 只看楼主
热点关注
You need Perl 5 安装openssl时报错提示需要安装perl 5
shell 脚本中常见的 if [ $? -ne 0 ]; 意思
shell 中 if [ “x${var}“ == “x“ ] 中 x的作用
shell脚本每行后面多了一个^M的原因和解决办法
服务停止、启动、重启一体化脚本,万能语言启动脚本
shell参数判断
在后台用进程名运行bash脚本
shell脚本每行后面多了一个^M的原因和解决办法
定时检测服务,检测down掉后重启。系统检测到DMSERVER运行正常
挂载磁盘的时候遇到一个问题,挂载完磁盘之后重启服务器挂载的盘丢失了.
中标麒麟系统Your trial is EXPIRED and no VALID licens
termux 开启ssh并用用户名和密码登陆
extman-1.1自带了图形化显示日志的功能;此功能需要rrdtool的支持,您需要安装此些模块才可能正常显示图形日志。
postfix的相关个别参数设置
postfix中recipient/client/sender/helo四者的区别