Unix 找到-名称“*”。";找到-名称“*”。"&燃气轮机;o在深层目录中给出不同的答案

Unix 找到-名称“*”。";找到-名称“*”。"&燃气轮机;o在深层目录中给出不同的答案,unix,command-line,find,dump,Unix,Command Line,Find,Dump,find-name“*.c”返回正确的内容,列出从执行点到整个完整相对路径的所有文件(示例): find-名称“*.c”>o输出到文件时,路径的开头将替换为单词“dump”(示例): 知道原因吗?Find正在返回当前目录中的所有文件。输出中包含的当前目录中有与*.c模式匹配的文件,或者在stderr上有一条“find:*.c:没有这样的文件或目录”消息,您没有告诉我们 更新: 你的问题现在不同了。回答你的新问题: find不会根据其输出的去向改变其行为。这意味着您在重定向测试的不同条件下执行它,

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

find-名称“*.c”>o
输出到文件时,路径的开头将替换为单词“dump”(示例):


知道原因吗?

Find正在返回当前目录中的所有文件。输出中包含的当前目录中有与
*.c
模式匹配的文件,或者在stderr上有一条“find:*.c:没有这样的文件或目录”消息,您没有告诉我们

更新:

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


find不会根据其输出的去向改变其行为。这意味着您在重定向测试的不同条件下执行它,或者正在检查的文件中的输出不是find的实际输出。

find将返回当前目录中的所有文件。输出中包含的当前目录中有与
*.c
模式匹配的文件,或者在stderr上有一条“find:*.c:没有这样的文件或目录”消息,您没有告诉我们

更新:

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


find不会根据其输出的去向改变其行为。这意味着您在重定向测试的不同条件下执行它,或者您正在检查的文件中的输出不是find的实际输出。

文件的实际路径是什么?哇。这不应该发生。只是为了好玩,试试“
find.-name”*.c“| tee list.txt
”看看你得到了什么(在屏幕上和文件中)。我猜你没有在与第一个相同的目录中执行第二个命令。它是脚本的一部分吗?原来find在前几个文件中输出“/dump/g/h/file.c”,所以两种情况下的输出是相同的,只是我没有看到前几个文件上有“dump”。现在的问题是,是什么让它在最初的几个文件上创建这个“转储”。我删除了子文件夹中的一半文件,它不再进行“转储”。非常奇怪。你有一个名为
dump
的目录吗?ls-l dump/g/h/file.c的输出是什么?文件的实际路径是什么?哇。这不应该发生。只是为了好玩,试试“
find.-name”*.c“| tee list.txt
”看看你得到了什么(在屏幕上和文件中)。我猜你没有在与第一个相同的目录中执行第二个命令。它是脚本的一部分吗?原来find在前几个文件中输出“/dump/g/h/file.c”,所以两种情况下的输出是相同的,只是我没有看到前几个文件上有“dump”。现在的问题是,是什么让它在最初的几个文件上创建这个“转储”。我删除了子文件夹中的一半文件,它不再进行“转储”。非常奇怪。你有一个名为
dump
的目录吗?ls-l dump/g/h/file.c的输出是什么?
./a/b/c/d/e/f/g/h/file.c
./dump/g/h/file.c