Shell重定向文件描述符
2024-08-29 22:12:40
#!/bin/bash
最近在看shell,各种困惑,不过解决困惑的感觉还是很不错的。废话少说,linux中使用文件描述符来标识每个文件对象。文件描述符为一个非负整数,可以唯一标识会话中打开的文件。每个过程最多可以有9个文件描述符。
linux使用的标准文件描述符:
标准输入STDIN就是0,标准输出STDOUT就是1,标准错误输出STDERR就是2。而我们也可以自己创建文件描述符3~8。
将今天看到的一段代码:
1 #!/bin/bash
2 exec 3>&1
3 exec 1>test
4 echo "something to output file"
....
....
5 exec 1>&3
6 echo "Now things should be back"
第二行代码使用文件描述符3指向文件描述符1的位置,即标准输出的位置,用于保存标准文件描述符1的位置。之后第三行代码将文件描述符1重定向到文件test,之后再执行后面的代码。在执行到第5行代码时将文件描述符1又重新指向其原来位置。
这种方法就是在脚本程序中临时将输出重定向然后再将输出恢复到通常设置的方法~还是会经常用到的,呼呼~。
还是那句话:Where there is a shell,there is a way!
#exit 0
最新文章
- 从APP跳转到WI-FI
- ***PHP 数组排序 +php二维数组排序方法(PHP比较器)
- 异步方法不能使用ref和out的解决方法
- 国内IT软件开发人员现状
- CodeForces 716A Crazy Computer
- spring mvc 和junit 4集成的注意点
- 美团网基于机器学习方法的POI品类推荐算法
- 10个经典的Java main 方法面试题
- 不要if else的编程
- linux 远程桌面工具NX
- .bash_profile与.bashrc和.profile的区分概念
- C语言5种存储区域
- 201521123073 《Java程序设计》第6周学习总结
- Egg + Vue 服务端渲染工程化实现
- 数据恢复培训资料:BMP文件详解
- python爬虫基础_requests和bs4
- 升讯威微信营销系统开发实践:(1)功能概要与架构设计( 完整开源于 Github)
- 局域网ARP攻击防护
- Tesseract环境搭建及编译安装
- KBMMW 4.84.00 发布