在 CentOS 系统中,nohup 命令用于在后台运行程序,即使关闭终端也不会中断程序运行
nohup 命令运行程序:nohup your_command > output.log 2>&1 &
这里,your_command 是你要运行的命令,output.log 是日志文件名。2>&1 表示将标准错误输出重定向到标准输出,& 表示将命令放入后台运行。
你可以使用 logrotate 工具来自定义日志格式。首先,创建一个新的日志格式配置文件:
sudo vi /etc/logrotate.d/your_command
然后,在文件中添加以下内容:
/path/to/output.log {
copytruncate
daily
rotate 7
compress
missingok
notifempty
create 0640 root root
postrotate
/usr/bin/killall -HUP your_command
endscript
}
这里,/path/to/output.log 是你的日志文件路径。你可以根据需要修改其他选项,例如 daily(每天轮转日志)、rotate 7(保留7天的日志)等。
如果你的程序支持自定义日志格式,你可以在程序中设置日志格式。这通常涉及到修改程序的源代码或配置文件。具体方法取决于你使用的程序。
例如,如果你使用的是 Python 的 logging 模块,可以这样设置日志格式:
import logging
logging.basicConfig(filename='output.log', level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s')
这里,format 参数定义了日志格式,包括时间戳、日志级别和消息。
总之,你可以通过以上方法在 CentOS 系统中使用 nohup 命令运行程序,并自定义日志格式。