Linux实时将所有输出重定向到文件
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
·
Linux的重定向机制十分好用,除了编写代码本身的重定向,shell本身支持重定向的功能。
我们经常需要在服务器上挂起一个服务程序后台运行,然后将该程序的所有输出重定向到某个文件,这样即使我们注销了用户,程序依然在linux服务器上运行着,log等信息都能够实时的写到文件中。
但是重定向的输出经常无法实时刷新到指定文件中,当我们调试程序时,这将给我们带来巨大的困扰。其实只需要关闭重定向输出的缓冲,即可实现实时刷新的效果。
命令如下:
nohup unbuffer command > file.out 2>&1 &
命令的说明如下:
上面的unbuffer命令需要额外安装expect-devel,用来实时刷新。
nohup命令用来忽略所有挂断(SIGHUP)信号,让你的程序即使在用户注销后依然继续运行。
command是任何一段你想要执行的shell命令。
> file.out 代表将command运行结果重定向到当前目录下的file.out文件中(如果要每次运行的结果追加到file.out后面,可以用>>而不是>)。
2 >&1表示将标准错误输出cerr的所有输出也都重定向到标准输出cout中,这样file.out中就会记录command命令运行过程中所有标准输出。(参见shell脚本的重定向)
最后一个&表示后台运行该command。
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 5 年前
5def40a3
Add host customization support for the NodeJS version 5 年前
新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐


所有评论(0)