Python 用一个脚本来控制另一个脚本的运行、关闭

简介: Python 用一个脚本来控制另一个脚本的运行、关闭

1、一开始按照网上教程,使用subprocess来实现另外一个脚本的运行和关闭,但是这个脚本在连续运行的时候不容易返回数据,判断脚本运行的状态


2、使用笨方法,用os.system运行脚本,使用os.kill(pid)杀死进程的方法关闭脚本的运行,这样就可以实现在一个脚本里面控制其他脚本的开启和运行了。当前这个方法在linux系统,如ubuntu18.04中跑,不存在问题


代码样例:

需要运行的脚本---run.py

import time
count=0
con=True
while con:
    now time=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))
    count+=1
    print(count,now_time)
    time.sleep(1)

写的控制运行脚本的脚本代码---control.py

import os,signal
import time
def get_now_time():
    # 获取当前的本地时间
    now_time=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))
    return now_time
def kill(pid):
    print('pid',pid)
    # pgid=os.getpgid(pid)
    # print(pgid)
    # a = os.killpg(pgid,signal.SIGKILL)
    a = os.kill(pid,signal.SIGKILL)
    print('已杀死pid为%s的进程, 返回值是:%s' % (pid, a))
def kill_target(target):
    cmd_run="ps aux | grep {}".format(target)
    out=os.popen(cmd_run).read()
    for line in out.splitlines():
        print(line)
        if '另外判断杀死进行所在的路径' in line:
            pid = int(line.split()[1])
            kill(pid)
# 建议在运行命令后面加上&符号,似乎是以另一个线程跑
os.system('python ./run.py &') 
while True:
    # 关闭
    if some_condition:
        print('暂停')
        kill_target('run.py')
    # 打开
    if some_else_condition:
        os.system('python ./run.py &')
目录
相关文章
|
8天前
|
安全 网络安全 文件存储
思科设备巡检命令Python脚本大集合
【10月更文挑战第18天】
32 1
思科设备巡检命令Python脚本大集合
|
4天前
|
关系型数据库 MySQL 数据库连接
python脚本:连接数据库,检查直播流是否可用
【10月更文挑战第13天】本脚本使用 `mysql-connector-python` 连接MySQL数据库,检查 `live_streams` 表中每个直播流URL的可用性。通过 `requests` 库发送HTTP请求,输出每个URL的检查结果。需安装 `mysql-connector-python` 和 `requests` 库,并配置数据库连接参数。
97 68
|
18天前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
32 1
Python实用记录(十三):python脚本打包exe文件并运行
|
1天前
|
算法 测试技术 开发者
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗;代码审查通过检查源代码发现潜在问题,提高代码质量和团队协作效率。本文介绍了一些实用的技巧和工具,帮助开发者提升开发效率。
6 3
|
3天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
自动化测试与脚本编写:Python实践指南
10 1
|
29天前
|
Python
Python 脚本高级编程:从基础到实践
本文介绍了Python脚本的高级概念与示例,涵盖函数的灵活应用、异常处理技巧、装饰器的使用方法、上下文管理器的实现以及并发与并行编程技术,展示了Python在自动化任务和数据操作中的强大功能。包括复杂函数参数处理、自定义装饰器、上下文管理器及多线程执行示例。
39 5
|
1月前
|
安全 Python
Python脚本实现IP按段分类
【10月更文挑战第04天】
24 7
|
2月前
|
机器学习/深度学习 人工智能 运维
自动化运维的魔法:如何利用Python脚本提升工作效率
【9月更文挑战第29天】在数字时代的浪潮中,IT运维人员面临着前所未有的挑战和机遇。本文将通过深入浅出的方式,介绍自动化运维的基本概念、核心价值以及使用Python脚本实现自动化任务的方法。我们将从实际案例出发,探讨如何利用Python简化日常的系统管理任务,提高运维效率,并展望自动化运维的未来趋势。无论你是初学者还是有经验的运维专家,这篇文章都将为你开启一扇通往高效工作方式的大门。
52 2
|
2月前
|
Web App开发 存储 安全
Python编写脚本,打开浏览器输入网址,自动化登陆网站
Python编写脚本,打开浏览器输入网址,自动化登陆网站
47 4
|
2月前
|
Windows Python
python获取windows机子上运行的程序名称
python获取windows机子上运行的程序名称