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

简介: 如何使用 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日志并进行多维度分析。
相关文章
|
2天前
|
Shell Python
Python Stock guess_indicators_daily_job.py文件的调整
Python Stock guess_indicators_daily_job.py文件的调整
12 1
|
2天前
|
XML 前端开发 数据格式
BeautifulSoup 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据
BeautifulSoup 是 Python 的一个库,用于解析 HTML 和 XML 文件,即使在格式不规范的情况下也能有效工作。通过创建 BeautifulSoup 对象并使用方法如 find_all 和 get,可以方便地提取和查找文档中的信息。以下是一段示例代码,展示如何安装库、解析 HTML 数据以及打印段落、链接和特定类名的元素。BeautifulSoup 还支持更复杂的查询和文档修改功能。
9 1
|
15小时前
|
Python
在Python中,利用`os模块`的`path.exists()`函数可判断文件是否存
在Python中,利用`os模块`的`path.exists()`函数可判断文件是否存在,该函数对路径进行检查,存在则返回True,不存在则返回False。示例代码展示了如何检查'example.txt'文件是否存在并相应打印消息。此外,`os.path.isfile()`用于确认路径是否为文件,仅当是文件时返回True,否则返回False,同样配以示例说明其用法。
7 2
|
1天前
|
Python Perl
LabVIEW调用Perl和Python脚本
LabVIEW调用Perl和Python脚本
|
2天前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
14 6
|
2天前
|
Go 文件存储 iOS开发
LabVIEW崩溃后所产生的错误日志文件的位置
LabVIEW崩溃后所产生的错误日志文件的位置
|
3天前
|
缓存 人工智能 算法
编写高效的Python脚本:性能优化的策略与技巧
编写高效的Python脚本需要综合考虑多个方面,包括代码结构、数据结构和算法选择等。本文将探讨在Python编程中提高脚本性能的方法,包括优化数据结构、选择合适的算法、使用Python内置函数以及通过并行和异步编程提升效率。这些技巧旨在帮助开发者在不同应用场景中编写出高性能的Python代码。
|
4天前
|
数据采集 NoSQL 中间件
python-scrapy框架(四)settings.py文件的用法详解实例
python-scrapy框架(四)settings.py文件的用法详解实例
9 0
|
4天前
|
存储 数据采集 数据库
python-scrapy框架(三)Pipeline文件的用法讲解
python-scrapy框架(三)Pipeline文件的用法讲解
7 0
|
6天前
|
监控 Python
Python中精通异常日志记录
Python中精通异常日志记录
10 0