我试图重定向都stdout和stderr到文件的今天,我碰到这个就来了:
<command> > file.txt 2>&1
Run Code Online (Sandbox Code Playgroud)
这显然重定向stderr到stdout第一个,然后结果stdout被重定向到file.txt.
但是,为什么不是顺序<command> 2>&1 > file.txt?人们自然会将此解读为(假设从左到右执行)首先执行的命令,然后stderr重定向到stdout,然后将结果stdout写入file.txt. 但以上只重定向stderr到屏幕。
shell 如何解释这两个命令?