我尝试/
使用 来ls -d -R $PWD/* | grep searchforthistext
查找计算机中的任何目录或文件searchforthistext
,并给我它们的绝对路径(因为简单地使用ls -R | grep searchforthistext
只会列出目录和文件的名称,但不会显示它们在哪里)。由于某种原因,它什么也没做;它没有向我吐出错误消息,它只是找不到任何内容并进入下一行等待我的输入。
作为测试(在另一个目录中,以便我可以将显示的文件数量限制为测试的合理数量),我在ls -d -R $PWD/*
没有 grep 的情况下运行;这项工作成功了。然后我跑了ls -d $PWD/* | grep searchforthistext
,又成功了。我又做了一次测试ls -R | grep searchforthistext
,并再次成功。
作为最后的测试,我尝试ls -d -R $PWD/* | grep searchforthistext
并注意到它正在查找searchforthistext
名称中带有 的文件并显示它们的绝对路径,但它不能递归工作(如此有效地运行,它执行与 相同的操作ls -d $PWD/* | grep searchforthistext
)。
总而言之,在使用时,我可以成功使用,ls
中的任意两个(因此它们中的两个不能一起工作似乎不是问题),但是当我一起尝试它们时,递归失败。我不知道这是为什么。-d $PWD/*
-R
| grep searchforthistext