2012-12-07 37 views
1

我有兩個程序。第一個是客戶端,第二個是服務器。他們使用stdin和stdout以文本格式交換數據。Bash:將stdin複製到文件

我想在它們之間放置代理bash腳本並記錄從stdin到文件的所有內容。

我嘗試下面的代碼,但/tmp/f-copy.txt是空

Proxy.sh:

exec 6<&0 
exec 6>/tmp/f-copy.txt 
server 

我該怎麼辦錯了嗎?

回答

4

看看tee命令,這就是你想要的。從手冊頁:

tee實用程序將標準輸入複製到標準輸出,在零個或多個文件中複製。輸出是無緩衝的。

+0

問題是,三通等待輸入結束(據我所知)。我需要一些不會阻止執行的東西。 – Antonio

+1

@Antonio:呃......沒有它*沒有*等待輸入結束...... – thkala

+0

@Antonio:...至少不是如果通過「輸入結束」你是指EOF ... – thkala