在回答这个问题,回答者引用了一段脚本,其中包含如下一行
exec 4>/path/to/output.file
#and a third, for reading and writing, with FD 6 (it's not recommended to use FD 5)
我认为他所指的并非专门针对这个问题的内容。更像是一般性建议,但未能提供背景信息。那么,我们为什么要尽量避免使用文件描述符 5 呢?
答案1
使用
file descriptor 5
可能会引起问题。当 Bash 创建子进程时,与 exec 一样,子进程会继承 fd 5(请参阅 Chet Ramey 的存档电子邮件,主题:回复:文件描述符 5 保持打开状态)。最好不要管这个特定的 fd。