如何使用 Linux 后台运行 Python 脚本,并输出日志文件

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 如何使用 Linux 后台运行 Python 脚本,并输出日志文件

在这里插入图片描述

简介:因为Python代码的简洁易上手特性,有时候就会弃坑Java,来使用Python开发一段程序来达到自己想要的效果。本篇文章就是来介绍如何在Linux相关系统上运行Python程序

1. 脚本执行

1.1 直接启动

介绍的第一种方式呢就比较简单粗暴。这种方式如果使用 ctrl+c ,程序就会终止了

如果运行的python脚本执行时间较快,可以使用这种方式同时也方便查看日志

[xxx@single xxx]# python run_test.py

注意:python这个命令,需要和系统内的配置相对应,不然执行会报各种问题

1.2 nohup执行并打印日志

使用nohup命令启动不会因为会话关闭而导致程序退出

后台启动python脚本,并输出日志到p_log.log文件中

[xxx@single xxx]# nohup python p_test.py > p_log.log 2>&1 &

可以使用 >dev/null 2>error.log 只记录程序的异常日志

[xxx@single xxx]# nohup python p_test.py >/dev/null 2>p_error.log 2>&1 &

1.3 nohup执行不打印日志

[xxx@single xxx]# nohup python p_test.py >dev/null 2>&1 & 

1.4 参数说明

序号 参数 说明
1 命令行尾的 & 标识后台运行程序
2 nohup nohup命令用于不挂断地运行命令
3 命令行首的python 执行python代码的命令
4 p_log.log or p_error.log 程序运行期间输出的日志文件
5 p_test.py python程序脚本源代码
6 > 打印程序输出信息到指定日志文件中
7 /dev/null 2>&1 表示什么也不输出
附加: -u 参数:强制其标准输出也同标准错误一样不通过缓存直接打印到屏幕。其实就是不加缓存,如果在python命令后面不加 -u,导致不会实时刷新print函数的信息

2. 停止脚本运行

2.1 查看python脚本服务

[xxx@single xxx]# ps -ef | grep python
root     10404 10244  0 10:08 pts/0    00:00:14 python /home/python/p_test.py

2.2 关闭执行python的服务

[xxx@single xxx]# kill -9 10404

或者运行了多个python脚本,想来点简单粗暴的是吧

[xxx@single xxx]# pkill python

2.3 保险起见检查下

如果没有python相关的程序在运行,即停止成功

[xxx@single xxx]# ps -ef | grep python
如果本篇对你有用,欢迎点赞、关注、转载,由于作者水平有限,如有问题请留言。
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
12天前
|
机器学习/深度学习 存储 算法
解锁文件共享软件背后基于 Python 的二叉搜索树算法密码
文件共享软件在数字化时代扮演着连接全球用户、促进知识与数据交流的重要角色。二叉搜索树作为一种高效的数据结构,通过有序存储和快速检索文件,极大提升了文件共享平台的性能。它依据文件名或时间戳等关键属性排序,支持高效插入、删除和查找操作,显著优化用户体验。本文还展示了用Python实现的简单二叉搜索树代码,帮助理解其工作原理,并展望了该算法在分布式计算和机器学习领域的未来应用前景。
|
6天前
|
Shell Linux
【linux】Shell脚本中basename和dirname的详细用法教程
本文详细介绍了Linux Shell脚本中 `basename`和 `dirname`命令的用法,包括去除路径信息、去除后缀、批量处理文件名和路径等。同时,通过文件备份和日志文件分离的实践应用,展示了这两个命令在实际脚本中的应用场景。希望本文能帮助您更好地理解和应用 `basename`和 `dirname`命令,提高Shell脚本编写的效率和灵活性。
60 32
|
16天前
|
存储 Linux 网络安全
linux应急响应检查脚本
通过这个脚本,可以快速收集系统的关键信息,有助于在发生问题时进行及时的应急响应和分析。
74 34
|
16天前
|
运维 应用服务中间件 nginx
docker运维查看指定应用log文件位置和名称
通过本文的方法,您可以更高效地管理和查看Docker容器中的日志文件,确保应用运行状态可控和可监测。
91 28
|
22天前
|
监控 网络安全 开发者
Python中的Paramiko与FTP文件夹及文件检测技巧
通过使用 Paramiko 和 FTP 库,开发者可以方便地检测远程服务器上的文件和文件夹是否存在。Paramiko 提供了通过 SSH 协议进行远程文件管理的能力,而 `ftplib` 则提供了通过 FTP 协议进行文件传输和管理的功能。通过理解和应用这些工具,您可以更加高效地管理和监控远程服务器上的文件系统。
52 20
|
28天前
|
存储 数据采集 数据处理
如何在Python中高效地读写大型文件?
大家好,我是V哥。上一篇介绍了Python文件读写操作,今天聊聊如何高效处理大型文件。主要方法包括:逐行读取、分块读取、内存映射(mmap)、pandas分块处理CSV、numpy处理二进制文件、itertools迭代处理及linecache逐行读取。这些方法能有效节省内存,提升效率。关注威哥爱编程,学习更多Python技巧。
|
29天前
|
存储 JSON 对象存储
如何使用 Python 进行文件读写操作?
大家好,我是V哥。本文介绍Python中文件读写操作的方法,包括文件读取、写入、追加、二进制模式、JSON、CSV和Pandas模块的使用,以及对象序列化与反序列化。通过这些方法,你可以根据不同的文件类型和需求,灵活选择合适的方式进行操作。希望对正在学习Python的小伙伴们有所帮助。欢迎关注威哥爱编程,全栈路上我们并肩前行。
|
2月前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
1月前
|
存储 算法 Serverless
剖析文件共享工具背后的Python哈希表算法奥秘
在数字化时代,文件共享工具不可或缺。哈希表算法通过将文件名或哈希值映射到存储位置,实现快速检索与高效管理。Python中的哈希表可用于创建简易文件索引,支持快速插入和查找文件路径。哈希表不仅提升了文件定位速度,还优化了存储管理和多节点数据一致性,确保文件共享工具高效运行,满足多用户并发需求,推动文件共享领域向更高效、便捷的方向发展。
|
2月前
|
Linux Python
Linux 安装python3.7.6
本教程介绍在Linux系统上安装Python 3.7.6的步骤。首先使用`yum`安装依赖环境,包括zlib、openssl等开发库。接着通过`wget`下载Python 3.7.6源码包并解压。创建目标文件夹`/usr/local/python3`后,进入解压目录执行配置、编译和安装命令。最后设置软链接,使`python3`和`pip3`命令生效。

热门文章

最新文章