找 。 -name“* .c”并找到。 -name“* .c”> o在深层目录中给出不同的答案

时间:2013-01-26 04:40:03

标签: unix command-line find dump

find . -name "*.c"返回正确的内容,列出了从执行点开始的完整相对路径的所有文件(示例):

./a/b/c/d/e/f/g/h/file.c
输出到文件的

find . -name "*.c" > o用“dump”替换路径的开头(例子):

./dump/g/h/file.c

知道为什么吗?

1 个答案:

答案 0 :(得分:1)

Find返回当前目录中的所有文件。您要么拥有与当前目录中*.c模式匹配的文件,这些文件包含在输出中,要么stderr上有一个“find:* .c:No such file or directory”消息,而您没有告诉它关于我们。

更新

你的问题现在不同了。回答你的新问题:

find不会改变其行为,具体取决于其输出的位置。这意味着您要么在重定向测试中的不同条件下执行它,要么正在检查的文件中的输出不是find的实际输出。