
我正在嘗試將 的輸出重定向ssss-combine
到文件,但到目前為止尚未成功。
我嘗試了基礎知識:> file
,2>&1 > file
但tee file
它總是顯示在螢幕上,並且文件中沒有放入任何內容。
答案1
雖然你沒有具體說明精確的您正在執行的命令,因此很難確定,我假設您的命令列印到標準錯誤檔案描述符(又名 stderr)而不是 stdout。
重定向> file
或| tee file
僅重定向 stdout,但不重定向 stderr。
2>&1 > file
也不做你正在尋找的事情。它首先將錯誤重定向到標準輸出目前所在的位置,即您的終端模擬器,並且然後將標準輸出(並且僅標準輸出,而不是標準誤差)重定向到檔案。
您可以使用2>file
重定向 stderr,或交換上一個範例中的兩個重定向:>file 2>&1
將兩個串流重定向到同一個檔案。順序很重要,因為它們是從左到右評估的。這次,您首先將輸出重定向到文件,然後將錯誤重定向到輸出的當前位置(已經是該文件)。
答案2
技巧是使用script -c 'ssss-combine ...' output.txt
(因為 ssss 不會輸出到 stdout)