如何使用 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
如果本篇对你有用,欢迎点赞、关注、转载,由于作者水平有限,如有问题请留言。
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
存储 监控 算法
防止员工泄密软件中文件访问日志管理的 Go 语言 B + 树算法
B+树凭借高效范围查询与稳定插入删除性能,为防止员工泄密软件提供高响应、可追溯的日志管理方案,显著提升海量文件操作日志的存储与检索效率。
402 2
|
存储 数据管理 Linux
区分Linux中.tar文件与.tar.gz文件的不同。
总之,".tar"文件提供了一种方便的文件整理方式,其归档但不压缩的特点适用于快速打包和解压,而".tar.gz"文件通过额外的压缩步骤,尽管处理时间更长,但可以减小文件尺寸,更适合于需要节约存储空间或进行文件传输的场景。用户在选择时应根据具体需求,考虑两种格式各自的优劣。
2371 13
|
Linux
【Linux】 Linux文件I/O常见操作技巧
以上就是Linux文件I/O操作的一些技巧,接纳它们,让它们成为你在Linux世界中的得力伙伴,工作会变得轻松许多。不过记住,技巧的运用也需要根据实际情况灵活掌握,毕竟,最适合的才是最好的。
432 28
|
安全 Linux
Linux赋予文件000权限的恢复技巧
以上这些步骤就像是打开一扇锁住的门,步骤看似简单,但是背后却有着严格的逻辑和规则。切记,在任何时候,变更文件权限都要考虑安全性,不要无谓地放宽权限,那样可能
528 16
|
存储 Linux 数据处理
深入剖析Linux中一切即文件的哲学和重定向的机制
在计算机的奇妙世界中,Linux的这套哲学和机制减少了不同类型资源的处理方式,简化了抽象的概念,并蕴藏着强大的灵活性。就像变戏法一样,轻轻松松地在文件、程序与设备之间转换数据流,标准输入、输出、错误流就在指尖舞动,程序的交互和数据处理因此变得既高效又富有乐趣。
302 4
|
Ubuntu Linux
"unzip"命令解析:Linux下如何处理压缩文件。
总的来说,`unzip`命令是Linux系统下一款实用而方便的ZIP格式文件处理工具。本文通过简明扼要的方式,详细介绍了在各类Linux发行版上安装 `unzip`的方法,以及如何使用 `unzip`命令进行解压、查看和测试ZIP文件。希望本文章能为用户带来实际帮助,提高日常操作的效率。
4141 12
|
监控 Linux 应用服务中间件
linux查看日志文件tail -f用法
在 Linux 中,查看和监控日志文件是系统管理员和开发者常用的操作之一。tail 命令就是用来查看文件内容的,它默认显示文件的最后部分。tail -f 是 tail 命令的一个非常有用的选项,用于实时查看和跟踪日志文件的更新,尤其是在监控运行中的服务时非常有用。
1546 0
linux文件重命名命令
本指南介绍Linux文件重命名方法,包括单文件操作的`mv`命令和批量处理的`rename`命令。`mv`可简单更改文件名并保留扩展名,如`mv old_file.txt new_name.txt`;`rename`支持正则表达式,适用于复杂批量操作,如`rename 's/2023/2024/' *.log`。提供实用技巧如大小写转换、数字序列处理等,并提醒覆盖风险与版本差异,建议使用`-n`参数预览效果。