Linux 标准输出重定向
程序员文章站
2022-04-10 12:00:24
...
文章目录
一、引例
用远程服务器登陆工具(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
上一篇: svn 备份