bash/shell 重定向中“&”字符的确切作用是什么?

bash/shell 重定向中“&”字符的确切作用是什么?

因此,当我为学校编写自己的 shell 时,我必须实现重定向。

我已经看过 GNU Bash 手册和相当多的教程,但我仍然无法理解& 符号到底是什么意思在这些重定向中。我知道在使用简单的重定向时必须使用它们,例如&>fileor2>&-但我不明白它的确切含义。

有人可以解释一下吗?

答案1

中的& 符号>&没有功能性作用。它的作用更像是字母c的作用cat

符号>&<&具有在手册页中解释的角色bash

您可以将 视为&指示重定向涉及合并两个 IO 流。但它更多的是助记符拼写选择的一部分,而不是单独的、独立的每个角色的动作或角色。

元字符&也出现在其他上下文中,如&行尾或&&运算符中。但这有点像c同时出现在cat和中cd。它是几个不相关特征的拼写中的常见元素。

相关内容