Stdout
什麼是非標準輸入/輸出/錯誤
我讀過提到標準輸入/輸出/錯誤的書籍/教程。我的理解是:
- 標準輸入/輸出/錯誤是程序的概念(即,如果有人提到標準輸入/輸出/錯誤,他們實際上是在談論特定程序的標準輸入/輸出/錯誤。談論****標準輸入沒有意義**/輸出/**文件錯誤。)
- Linux 中大多數程序的標準輸入是鍵盤,標準輸出/錯誤是螢幕。
我的問題:如果有標準, Linux 中程序的非標準輸入/輸出/錯誤是什麼?
文件描述符 0、1 和 2 在程序被
exec
ed 時預設提供,並與 、 和stdin
相關stdout
聯stderr
。如果一個程序需要額外的 I/O 通道,它會打開從 3 開始的非標准文件描述符。對於 1.:是
對於 2.:對於未重定向 I/O 的互動式程序來說,情況確實如此。其他程序(例如
cron
作業)很可能有不同的關聯。