我成功地将程序输出的stdout / stderr的日志记录添加到文件中。
但是当我从screen
启动程序时,日志文件为空,因为它只记录来自screen
的消息,而不记录screen
内后台运行的程序。
请解决此问题或其他解决方案的任何方法,因此我可以使用stdout / stderr日志记录运行可拆卸程序,类似于screen
?
当前启动线:
screen -A -m -d -S test ./testserver -config = config.cfg -filepatching -autoinit 1>>" ./ log _ $(date +%s).txt" 2>>" ./ log _ $(日期+%s).txt"
答案 0 :(得分:1)
问题是,您需要封装命令。现在1>>"./log_$(date +%s).txt" 2>>"./log_$(date +%s).txt"
适用于屏幕本身,而不是程序执行。
请改为尝试:
screen -A -m -d -S test './testserver -config=config.cfg -filepatching -autoinit 1>>"./log_$(date +%s).txt" 2>>"./log_$(date +%s).txt"'
或者这个:
screen -A -m -d -S test /bin/sh -c './testserver -config=config.cfg -filepatching -autoinit 1>>"./log_$(date +%s).txt" 2>>"./log_$(date +%s).txt"'