2012-03-05 60 views
1
time curl http://www.google.com | tee | wc | gzip > google.gz 

爲什麼此命令不起作用?它創建文件並對操作進行計時,但不打印行數,字數和字符數(wc)。Linux,如何在管道命令中使用tee

time curl http://www.google.com | tee | wc 

這將打印打印字字符和線條,但顯然,所述三通管部分是沒有意義的。

是因爲我發送的URL的字數統計爲google.gz嗎?

我必須使用tee,gzip,time,curl將google網頁下載到gziped文件中,打印出字數,需要多長時間。

這是一個任務,所以我不想找人爲我做。我只是有一個問題,因爲我不能開球到實用程序,我不能同時進行gzip。

也許有一種方法使用gzip捲曲?

+1

你想做些什麼? – 2012-03-05 00:21:44

+3

所有這些命令都完成它們應該做的事情。您的第一個命令將'wc'的輸出傳遞給'gzip'。空的「tee」不會做任何事情,因爲它沒有目標。如果你解釋了你想要做什麼,我們可以解釋如何去做。 – 2012-03-05 00:26:03

回答

1

我要去猜測,這樣的事情是你想要什麼:

time curl http://www.google.com | tee /tmp/z | gzip > google.gz; wc /tmp/z; rm /tmp/z 
+0

是的,我可以做到這一點,但分配是使用單線管道命令組合來完成此任務。我不確定'''有資格嗎? – MVTC 2012-03-05 00:33:05

+0

爲什麼你不這麼說?爲什麼讓我們拔牙才能得到真正的問題? (提示:將'gzip'的輸出傳送到'tee',將其存儲在'google.gz'中,並允許它繼續到'gunzip | wc'。) – 2012-03-05 00:33:57

3

那麼,wc輸出的字符,字和行的數量,但然後you send it togzip壓縮它。最終,壓縮信息結束於google.gz。如果你解壓縮文件,例如與

gunzip google.gz 

你會看到三個數字。

此外,通常當使用tee時,它們指定一個文件,其中應用存儲的Tee數據。

+0

你怎麼能這樣做:'時間捲曲http://www.google.com | tee gzip> google.gz | wc'這樣做只是創建一個名爲gzip的文件,另一個名爲google.gz。 – MVTC 2012-03-05 00:22:01

+0

是的。我不知道還有什麼人會期待。也許這證明有幫助:http://linux.die.net/man/1/tee – 2012-03-05 00:33:28

1

time curl http://www.google.com | tee /dev/tty | gzip > google.gz