2011-03-01 61 views
1

我有一個名爲test的文件,其中包含單詞「hello」。Linux中的管道

不應該

 echo test | cat 

輸出喂?因爲它將來自作爲測試的回波測試的輸出作爲cat的輸入。所以基本上即時通訊貓測試。

但實際輸出是測試,我真的很困惑。

回答

0

在某些情況下,您可能需要通過管道傳遞參數。這是你會怎麼做:

echo test | xargs cat 

將輸出的內容名爲「test」的文件

2

你的管道發送testcat作爲輸入,還不如參數。你可以這樣做:

cat `echo test` 

echo控制參數cat

1

echo打印它的參數。 cat打印默認爲標準輸入的文件。當你管echo的標準輸出連接到cat的標準輸入。

正確的就是cat test

1

cat --help

如果沒有文件或FILE是 - ,讀取標準輸入。

在你的情況下,cat從標準輸入,即test讀取並輸出。