Shell
使用 wc 管道標準輸出到文件
我正在為一堂課做實驗作業,例如
users | wc -w
顯示目前登錄的使用者數量。講師要求我們將輸出寫入users
文件 (users > file
),同時仍顯示計數。我最初的想法是將原始範例更改為簡單地讀取users > file | wc -w
,但我收到錯誤:ambiguous output redirect
我們學院的 Unix 實驗室讓我們工作,預設情況下
tcsh
,我知道 shell 之間的命令可能不同。有沒有可以完成我完全忘記的命令?
使用
tee
:users | tee file | wc -w
給出使用者數量作為輸出,並將使用者作為內容寫入文件。
您的問題中的情況:
command >file | command2
這行不通。隨著
>file
您將輸出重定向command
到文件file
,同時輸出被寫入匿名管道,命令command2
在另一端讀取。這是一個模棱兩可的重定向。該
tee
命令將接受一個file
作為參數,其中tee
寫入從其標準輸入收到的所有內容。tee
還將從標準輸入寫入其標準輸出的所有內容,您可以在其中重定向到更多命令或文件。