【问题标题】:Listing all files and folders recursively via terminal通过终端递归列出所有文件和文件夹
【发布时间】:2014-04-03 18:05:02
【问题描述】:

我有一个包含大约 2000 个子文件夹的文件夹,其中一些包含更多的子文件夹,还有一些包含文件。我已经通过终端使用了这段代码:

cd /path/to/文件夹

ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^/]*//--/g' -e 's/^/ /' -e 's/-/|/ '

返回一个非常好的所有子文件夹的递归列表,但它没有列出这些文件夹的文件。有谁知道如何修改此代码以生成递归文件夹列表并且包含文件?

由于不值得一提的原因,我仅限于在这台计算机上使用终端,并且无法尝试使用 C# 或 Java 的其他方法。任何帮助表示赞赏。

【问题讨论】:

    标签: macos unix terminal


    【解决方案1】:

    像这样使用find怎么样:

    find $PWD
    

    或者使用这个别名:

    alias stree='ls -R | grep : | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\'''
    

    【讨论】:

    • 谢谢,find 命令是第一个返回文件名的建议,但是有没有办法添加递归结构(使用起来更容易)?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-22
    • 1970-01-01
    • 1970-01-01
    • 2021-03-21
    • 2019-12-29
    相关资源
    最近更新 更多