Wor*_*ine 3 io-redirection stdout stderr
我一直在试图弄清楚文件描述符之间的关系。我不明白的一件事是,如何:
ls -l /bin/usr > ls-output.txt 2>&1
Run Code Online (Sandbox Code Playgroud)
不同于:
ls -l /bin/usr 2>&1 >ls-output.txt
Run Code Online (Sandbox Code Playgroud)
重定向的顺序很重要,因为它们是按顺序执行的:
stdout
( fd 1
) 将指向filename
和之后的stderr
( fd 2
) 将指向stdout
此示例中的目标filename
。
这意味着,既stdout
和stderr
重定向到filename
这里stderr
( fd 2
) 将指向目标,stdout
之后stdout
( fd 1
) 将重定向到filename.
,这意味着stderr
将重定向到原来的目标stdout
和stdout
被重定向到filename
。
所以简而言之,重定向的顺序很重要,因为每个文件描述符都是相互独立的。
有关更多信息,请查看其他一些问题和答案,例如:
归档时间: |
|
查看次数: |
185 次 |
最近记录: |