【发布时间】:2022-01-20 13:45:59
【问题描述】:
假设有几个目录,其中有几个不同的文件,我想在所有这些目录中找到一个特定的文件位置。
您如何使用pwd 和ls -laR | grep xyz ,以便我根据所有目录中的大小了解文件位置,而不必在发现文件存在后搜索每个目录在这些目录中的某处。
【问题讨论】:
标签: linux file terminal directory ls
假设有几个目录,其中有几个不同的文件,我想在所有这些目录中找到一个特定的文件位置。
您如何使用pwd 和ls -laR | grep xyz ,以便我根据所有目录中的大小了解文件位置,而不必在发现文件存在后搜索每个目录在这些目录中的某处。
【问题讨论】:
标签: linux file terminal directory ls
您可以使用带有大小的查找作为过滤器:
此示例将查找大小大于 3k 的文件:
find /path -size +3k
【讨论】:
我认为find 命令是您正在寻找的。
递归搜索/home/my-path上大于1k字节的所有文件:
find /home/my-path -size +1k
要更好地了解如何使用 find 及其大小参数(和其他参数),请参阅 man find。
递归搜索目录/home/my-path中名为foo.txt的文件:
find /home/my-path -name foo.txt
如果您不确切知道文件的名称,您可以使用通配符(例如,foo*.txt,如果文件名以 foo 开头并以 .txt 结尾)。
如果您仍然找不到您的文件,您可以删除-name 参数并将输出通过管道传输到grep。
【讨论】:
ls -laR | grep 1033 看到我找到了该文件但我不知道位置并且当我使用 find 找到它时,我在其他文件中找到了其他几个文件目录。如果我没有意义,我很抱歉