2015-09-30 57 views
1

我想這樣做在bash腳本:重定向輸出至兩個無名管道的Linux

tail -n0 -F /var/log/kern.log > $pipe1 AND $pipe2 

其中$pipe兩個命名管道。我知道這可以通過使用tee命令來完成,但我無法完成它的工作。

+0

您可以試試: 'tail -n0 -F /var/log/kern.log | ($ pipe1)>($ pipe2)' –

+2

@AvihooMamka我認爲這將實際分割輸出三種方式:pipe1,pipe2和標準輸出(tee總是傳遞給stdout)。所以這行應該讀'tail -n0 -F /var/log/kern.log | ($ pipe1)'**'>'**'>($ pipe2)'(tee只有一個參數,stdout被重定向到pipe2)。 –

+0

在終端'tail -n0 -F /var/log/kern.log | ($ pipe1)>($ pipe2)'將它重定向到它自己。和'tail -n0 -F /var/log/kern.log | tee>($ pipe1)>>($ pipe2)'根本不起作用。在腳本中,我得到'權限被拒絕'?? – Tjax

回答

1

這應該工作:

tail -n0 -F /var/log/kern.log | tee "$pipe1" "$pipe2" >/dev/null 

tee輸出被重定向到/dev/null並且防止它在端子被打印。