Bash
為什麼 dd if=/dev/sdb |豬-c |tee /sdb.img.gz 列印到控制台?
該命令(在標題中
sudo dd if=/dev/sdb | pigz -c | sudo tee /sdb.img.gz
省略)列印二進制數據以控制台輸出或。我想知道為什麼因為所有輸出都被擷取在管道中並且鏈中的最後一個被重定向到文件。因此,標準輸出沒有“洩漏”。我沒有得到什麼?sudo``dd``pigz``|
我正在
bash
使用附帶的命令版本的 Ubuntu 20.04。
tee
複製其輸入,將其(在您的情況下)發送到其標準輸出和/sdb.img.gz
. 您可以重定向其輸出以避免在控制台上看到輸出:sudo dd if=/dev/sdb | pigz -c | sudo tee /sdb.img.gz > /dev/null
我會
pigz
直接以 root 身份執行,避免使用dd
andtee
:sudo sh -c 'pigz -c < /dev/sdb > /sdb.img.gz'
tee
列印到文件和標準輸出,cat
如果你不想要,使用或簡單地重定向標準輸出