一些命令不解 01

atstudy 2007-08-20 05:21:44
find /etc -name "at.deny" -print > find.dt 2>&1 &

不知道后面的“ 2>&1 &”中,除了后台命令&外,剩下的“2>&1”代表什么意思?
...全文
89 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzcpig 2007-08-20
  • 打赏
  • 举报
回复
&1 更准确的说应该是文件描述符 1, 而1 代表的就是STDOUT_FILENO,实际上这个操作就是一个dup2(2)调用.他标准输出到all_result ,然后复制标准输出到文件描述符2(STDERR_FILENO),其后果就是文件描述符1和2指向同一个文件表项,也可以说错误的输出被合并了

0表示键盘输入
1表示屏幕输出
2表示错误输出

因此,2>&1 就表示 错误信息重定向到 普通输出 的路径下

比如
1> /dev/null 2>&1

先将stdout重定向到/dev/null,再将错误信息重定向到stdout,则错误信息将写入/dev/null,通常用于我们需要结果$?,但又不想看到错误提示的时候

19,613

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧