Linux 标准输出重定向

一、引例

用远程服务器登陆工具(SecureCRT、Putty 等等)登陆 Linux 服务器的时候,过一段时间可能会自动断开连接,这时候需要重新登陆。原本进程去了后台,前台信息就没有了 。为了解决这个问题,需要将标准输出重定向到文件中。

二、标准输入输出

  • 在 Linux 下几乎一切都是文件,标准输入、输出也不例外,被称作文件描述符 (File Descriptor),简称 fd。所以在有些网络库底层源码中我们会看到 fd 这个变量命名。
名称 代码
标准输入 stdin 0
标准输出 stdout 1
标准错误输出 stderr 2

三、2>&1 重定向

  • 2>&1的意思就是将 标准错误 重定向到 标准输出

2 表示 标准错误
1 表示 标准输出
>& 是一个整体,代表 重定向

四、日志重定向步骤

  • 1)启动服务器的 shell 脚本叫 run_server.sh;
  • 2)再写一个shell脚本作为代理的启动脚本 run.sh,实现如下:
	---[run.sh]---
	sh run_server.sh > watch.log 2>&1

表示将 标准输出 和 标准错误 都重定向到 watch.log 文件中;调用 ./run.sh,就可以发现输出信息都没有了。

  • 3)现在的输出都在watch.log 文件中,直接用如下 shell 就可以试试看到信息显示了。
	tail -f watch.log

猜你喜欢

转载自blog.csdn.net/WhereIsHeroFrom/article/details/111362489