Io-Redirection

文件描述符和重定向

  • May 2, 2019

一些資源表明文件描述符0已連接到鍵盤。

0_kb

我了解到,echo不接收來自stdin(或0)的輸入。

這讓我感覺很矛盾。當我執行時echo foo,我使用鍵盤作為將輸入傳遞給命令的一種方式。在什麼意義上stdin連接到他們的鍵盤,使得這裡沒有矛盾?

首先,stdin 與鍵盤相關聯並不總是正確的。其次,您沒有使用 stdin 將任何內容傳遞給echo. 您正在使用鍵盤將字元串傳遞echo foo給您的外殼。shell 解析該字元串並呼叫一個名為echo(無論該命令是 shell 或執行檔的內置命令/usr/bin/echo還是/bin/echo無關的命令),該命令解析其參數,忽略其標準輸入,並寫出字元串foo\n

引用自:https://unix.stackexchange.com/questions/516734