Linux上部署视频流推送应用时,由于网络不稳定等原因程序会不断的输出错误信息,结果导致程序运行一天下来日志文件直接占满磁盘,解决方法就是不再输出日志文件,命令如下:
只输出错误信息到日志文件:
nohup ./program >/dev/null 2>log &
什么信息也不要:
nohup ./program >/dev/null 2>&1 &
关于/dev/null
/dev/null属于字符特殊文件,它属于空设备,是一个特殊的设备文件,它会丢弃一切写入其中的数据,写入它的内容都会永远丢失,而且没有任何可以读取的内容。它就像一个黑洞,我们一般会把/dev/null当成一个垃圾站,不要的东西丢进去。比如来清除文件中的内容。
Linux的重定向
0:表示标准输入;
1:标准输出,在一般使用时,默认的是标准输出;
2:表示错误信息输出。
./program >/dev/null 2>log表示将program的错误信息输出到log文件,其他信息丢进/dev/null。
./program >/dev/null 2>&1表示将program的错误信息重定向到标准输出,其他信息丢
本文介绍如何在Linux系统中控制程序日志输出,避免因大量错误信息导致磁盘空间被占满的问题。通过nohup命令结合重定向,实现错误信息记录的同时减少不必要的日志输出。
236

被折叠的 条评论
为什么被折叠?



