我想了解管道和重定向命令的真正威力。根据我的理解,|
将一个命令结果的输出作为自身的输入。而且,>
是帮助输出重定向。如果是这样,了解管道和重定向命令
find . -name "*.swp" | rm
find . -name "*.swp" > rm
为什么预期。对于我这个命令是行不通的上述命令意味着
- 递归扩展名为找到的所有文件。在当前目录下的swp。
- 取
1.
的输出并删除所有的结果文件。
仅供参考,是的,我知道如何完成这项任务。它可以通过传递-exec
标志来完成。
find . -name "*.swp"-exec rm -rf {} \;
但正如我已经提到的,我想用>
或|
命令来完成它。
如果我错了,走错了方向,请纠正我并解释重定向和管道命令。我们在哪里使用其命令?请不要提及简单的书籍例子,我读了所有的东西。试着向我解释一些复杂的事情。
'>'是输出重定向。 '<是输入重定向。 – chepner
你被困在标准输入和命令行之间的区别。你想在bash中使用'$()'运算符,或者在find中使用'-exec'选项,或者(也许是你最好的选择)'xargs'。没有能量写出真正的答案... – dmckee