【问题标题】:How to ls all the files in the subdirectories using wildcard?如何使用通配符 ls 子目录中的所有文件?
【发布时间】:2020-04-16 23:15:07
【问题描述】:

ls * 可以列出子目录中的所有文件。

ls *.pdb只能列出当前目录下所有扩展名为pdb的文件。

那么如何列出子目录中所有扩展名为pdb的文件呢?

我的子目录命名为123、...。我希望输出还包括目录信息,以便我可以将输出用作输入文件的集合。例如,输出应该是这样的:

1/a.pdb 1/b.pdb 1/c.pdb 2/a.pdb 2/b.pdb 2/c.pdb 3/a.pdb 3/b.pdb 3/c.pdb

【问题讨论】:

标签: linux ls


【解决方案1】:

3 个解决方案:

简单glob

ls */*.pdb

递归使用

shopt -s globstar
ls **/*.pdb

递归使用

find . -type f -name '*.pdb'

【讨论】:

    【解决方案2】:

    也试试这个:

    locate */*.pdb
    

    它用于以前制作的数据库

    如果您编写了一些 Python 代码并在之后同时使用两者,您会看到差异

    locate */*.py
    ls */*.py
    

    【讨论】:

    • 不能确定updatedb之前已经执行过,必须创建索引
    猜你喜欢
    • 2019-07-06
    • 2013-03-14
    • 2023-03-09
    • 1970-01-01
    • 2012-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-23
    相关资源
    最近更新 更多