请求解析两段无法理解的Bash重定向语句
Shell 语句逐行解析
下面逐个拆解这三段shell代码的作用:
exec 3>&1
把文件描述符3设置为标准输出(文件描述符1,即终端默认输出通道)的副本。简单说就是把当前的标准输出“备份”到fd3,后续如果需要恢复原本的输出方向,可以借助这个备份操作。exec 1>&2
将标准输出(fd1)重定向到标准错误(fd2)。执行这行之后,原本会输出到终端的普通信息,都会转而进入标准错误流,和错误提示信息走同一个通道。cat > $payload <&0cat命令默认读取标准输入(fd0),这里通过<&0显式指定输入来源为标准输入,再通过>将读取到的内容写入$payload变量指向的文件中。本质上和直接写cat > $payload效果一致,只是显式声明了输入源。
内容的提问来源于stack exchange,提问作者Sachin Kainth
相关产品推荐
相关产品推荐

