Shell学习笔记之在linux定时任务crontab中使用nohup不输出到nohup文件

0x00 概述

在linux定时任务crontab中使用nohup不输出到nohup文件,这时候需要做个重定向,将输出结果重定向到nohup文件即可.

 

0x02  增加重定向

最初的shell脚本,注意该脚本在命令行正常运行是可以把输出自动只想nohup.out文件的

复制代码
#!/bin/bash
ps -ef|grep test.py |grep -v "grep" # 判断脚本是否启动 if [ $? -ne 0 ] #如果没有 then echo "start process....." nohup python /home/hlz/Desktop/test.py & # 执行启动脚本命令,nohup输出是追加到日志文件,这样不会覆盖掉之前的日志文件 else echo "runing....." fi
复制代码

在命令行直接sh这个脚本文件, 脚本的输出会自动定向到脚本同级目录的nohup.out文件内;

 

但是当把这个脚本挂载到定时任务crontab内, 脚本的输出则不会定向到脚本同级目录的nohup.out文件内;

这时候需要做个重定向,注意两个脚本的区别:

复制代码
#!/bin/bash
ps -ef|grep test.py |grep -v "grep" # 判断脚本是否启动 if [ $? -ne 0 ] #如果没有 then echo "start process....." nohup python /home/hlz/Desktop/test.py >> /home/hlz/Desktop/test.log 2>&1 & # 执行启动脚本命令,nohup输出是追加到日志文件,这样不会覆盖掉之前的日志文件 else echo "runing....." fi
复制代码

需要加入指定重定向的文件绝对路径,后续该脚本定时启动的时候无论重启多少次,脚本的输出都会重定向到这个文件内.

 

posted @   时光飞逝,逝者如斯  阅读(974)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
历史上的今天:
2018-08-02 Python面试题之Python反射详解
点击右上角即可分享
微信分享提示