[英]How to pipe the output of the Linux which command into the Linux file command?
[英]How to pipe the output of a command to file on Linux
我正在CLI上運行一個任務,它提示我輸入是/否。
選擇一個選項后,屏幕上會滾動大量信息 - 包括幾個錯誤。 我想將此輸出傳遞給一個文件,以便我可以看到錯誤。 由於命令需要鍵盤輸入,因此簡單的“>”無效。
我在Ubuntu 9.1上運行。
command &> output.txt
您可以使用&>
將stdout和stderr重定向到文件。 這是command > output.txt 2>&1
簡寫,其中2>&1
表示“將stderr發送到與stdout相同的位置”(stdout是文件描述符1,stderr是2)。
對於交互式命令,如果我可以less
並立即讀取結果,我通常不會費心保存到文件中:
command 2>&1 | less
echo yes | command > output.txt
根據命令如何讀取它的輸入(某些程序在顯示它的提示之前丟棄stdin上的任何內容,但大多數沒有),這應該適用於任何理智的CLI環境。
您可以使用2>選項將錯誤發送到文件。
例:
命令2> error.txt
(使用選項2>)---看看它們在執行命令時是否會出現任何錯誤,它會將它發送到文件error.txt。
使用2>
而不僅僅是>
。
如果程序是由一個理智的人寫的,你可能想要的是stderr而不是stdout。 你可以通過使用類似的東西來實現這一點
foo 2> errors.txt
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.