Linux 重定向
2024-09-24 21:46:35
Linux 标准文件描述符
描述符 | 缩写 | 描述 |
0 | STDIN | 标准输入 |
1 | STDOUT | 标准输出 |
2 | STDERR | 标准错误 |
3-9 | 应该是扩展的标准输出(待验证) |
命令行重定向
ls -al existfile notexitfile > outfile > errlog
解释
ls -al | 这个命令不需要解释了 |
exitfile | 配合前面的ls,列出 exitfile 文件的信息 |
notexitfile | 配合前面的ls,列出 notexitfile 文件的信息 |
1> outfile | 将标准输出放到 outfile 文件中,可以使用cat outfile 查看内容 |
2> errlog | 将错误信息放到 errlog 文件中,可以使用 cat errlog 查看内容 |
脚本重定向 shell 中使用如下命令
echo "this is an error" >&
echo "this is normal output"
解释
第一个echo,会将 this is an error 这句话输出到标准错误中
第二个,则是使用的系统默认,输出到标准输出中,也就是我们能在执行脚本的时候看到的内容。
如果将这个脚本保存为 test.sh,执行下面的命令
./test.sh > errlog
再使用
cat errlog
就可以看到 this is an error 这句话了。
如果在 test.sh 脚本中第一句增加如下脚本:
exec >errlog
直接执行 ./test.sh 命令,在errlog中也会看到内容。
如果在脚本中使用
exec >errlog
这种形式,那么所有的错误都会输出到 errlog 中,可以使用
exec >&-
命令取消这种重定向。
最新文章
- sql2000分享 批量建表dev_编号
- 应用TortoiseGit为github账号添加SSH keys
- PAT 02-线性结构2 一元多项式的乘法与加法运算 (20分)
- Android源码下载并绑定到Eclipse中
- Duilib将UI资源文件打包到exe教程
- Qt学习之路(34): 国际化(下)
- SCJP_104——题目分析(2)
- 编译lua版本问题
- 二维数组在text,image的应用
- Python判断、运算符
- [转] Understanding Convolutional Neural Networks for NLP
- 用Android程序打开和关闭输入法
- SpringBoot项目eclipse运行正常maven install打包启动后报错ClassNotFoundException
- highcharts学习1----Line charts
- 理解指令的restrict属性(转)
- HDU 2061 Treasure the new start, freshmen!
- MicrosoftFixit50688 [Windows7事件ID10,WMI错误的解决方法
- MyBatis 学习记录6 TypeHandler
- main函数的传参与返回
- Android开源框架-Annotation框架(以ViewMapping注解为例)