0
目標是如果沒有輸入,甚至不會啓動$ foo。
如果foo =「diff - xyz」,並且輸入缺失或爲空,這可能很有用。 否則,diff會輸出所有「xyz」作爲差異。
原始問題是「cat doesnotexist | diff - exists」會輸出「exists」的內容(前綴爲「>」),但我希望整個管道都失敗。 我目前的解決方案是:
cat doesnotexist | (read first|| exit 1; (echo "$first"; cat) | diff - exists)
,但我想要一個較短的。
那麼,輸入是在一個遠程節點上,差異運行在本地,所以使用-f會比標題片段更加冗長。所以管道的附加值是它獲取遠程數據。它的輸入看起來像「ssh -x -e none -C who @ where cat doesnotexist |」,但是這對我來說似乎是不需要的細節,所以我沒有告訴。 :-) – Rainer 2010-11-12 15:05:19
在這種情況下,您可能會使用「scp -C who @ where:doesnotexist。&& diff doesnotexist exists」 – 2010-11-12 15:24:04
是的,我也可以。之後需要清理「doesnotexist」,但它更直接。謝謝。 – Rainer 2010-11-12 15:33:14