我的目录中没有名为 a 的文件。我使用命令“rm a 2>a”将标准输出错误重定向到文件 a。但是当我尝试“ls”命令时,没有名为 a 的文件。有人能解释一下吗?
答案1
2>a
导致 shell 将标准错误流重定向到名为 的文件a
。此文件是在启动命令之前创建的。rm
然后执行。它会找到一个名为 的文件a
(shell 已经创建)并取消链接。
答案2
a 在 rm 命令执行之前创建....就这么简单!
我的目录中没有名为 a 的文件。我使用命令“rm a 2>a”将标准输出错误重定向到文件 a。但是当我尝试“ls”命令时,没有名为 a 的文件。有人能解释一下吗?
2>a
导致 shell 将标准错误流重定向到名为 的文件a
。此文件是在启动命令之前创建的。rm
然后执行。它会找到一个名为 的文件a
(shell 已经创建)并取消链接。
a 在 rm 命令执行之前创建....就这么简单!