【发布时间】:2016-08-19 08:12:03
【问题描述】:
我知道如何使用
find . -name "file_name"
但是如果给我一个路径的一部分,比如“folder1/subfolder2/”,我如何获得包含这个部分路径的所有完整路径?
示例
部分路径:folder1/subfolder2/
想要的结果:
/bob/folder1/subfolder2/yo/
/sandy/folder1/subfolder2/hi/
【问题讨论】:
-
您必须围绕
find实用程序构建一个包装器(所以可能是alias),因为实用程序本身和找到的文件都不知道绝对路径。 -
对您的示例的说明:
find实用程序永远不会按照您在所需结果中的建议找到两个文件,except 如果它们都包含在文件夹中find的调用中指定的路径指向,所以这里是.。这意味着,在您的示例中,.必须指向/,否则该结果是不可能的。而在那种的情况下,你所缺少的只是实用程序已经输出的路径中的前导/。所以如果你尝试find / -name "file_name",你实际上会得到你想要的绝对路径;-) -
一个快速的解决方法是
find / -name "folder1" | grep "folder1/folder2"