我想了解管道和重定向命令的真正威力。根據我的理解,|
將一個命令結果的輸出作爲自身的輸入。而且,>
是幫助輸出重定向。如果是這樣,瞭解管道和重定向命令
find . -name "*.swp" | rm
find . -name "*.swp" > rm
爲什麼預期。對於我這個命令是行不通的上述命令意味着
- 遞歸擴展名爲找到的所有文件。在當前目錄下的swp。
- 取
1.
的輸出並刪除所有的結果文件。
僅供參考,是的,我知道如何完成這項任務。它可以通過傳遞-exec
標誌來完成。
find . -name "*.swp"-exec rm -rf {} \;
但正如我已經提到的,我想用>
或|
命令來完成它。
如果我錯了,走錯了方向,請糾正我並解釋重定向和管道命令。我們在哪裏使用其命令?請不要提及簡單的書籍例子,我讀了所有的東西。試着向我解釋一些複雜的事情。
'>'是輸出重定向。 '<是輸入重定向。 – chepner
你被困在標準輸入和命令行之間的區別。你想在bash中使用'$()'運算符,或者在find中使用'-exec'選項,或者(也許是你最好的選擇)'xargs'。沒有能量寫出真正的答案... – dmckee