【问题标题】:Finding all files with asterisks or dash character in them查找所有带有星号或破折号的文件
【发布时间】:2017-01-27 13:14:10
【问题描述】:

我想用特殊字符搜索系统中的所有文件。原因是我从 Linux 转移到 Mac 并且 exfat 文件格式没有复制名为 e.g. 的文件夹。 “A*STAR 演示文稿”。所以我想手动查找未复制的文件和文件夹。我怀疑诸如 - 之类的字符也可能不受支持?

问题是*find 函数中的通配符。所以我正在寻找一种将* 用作普通字符的方法。

find -name *'*'* ./ or something similar?

【问题讨论】:

    标签: unix find


    【解决方案1】:

    尝试

    find . -name '*[\**]*'
    

    祝你好运!

    【讨论】:

      【解决方案2】:

      对于filtering,将find 输出通过管道传输到grep 比使用-regex 选项find 更快。因此,使用此命令查找所有具有特殊字符 * 和/或 - 的文件:

      find $PWD | grep -E '[*-]+'
      

      或者,如果您不需要完整路径:

      find . | grep -E '[*-]+'
      

      这些是我的测试目录中的文件:

      $ ls -1
      *another
      another normal
      normal
      special *
      special -
      very*good
      

      让我们找到特别的:

      $ find . | grep -E '[*-]+'
      ./*another
      ./special *
      ./special -
      ./very*good
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-08-12
        • 1970-01-01
        • 2013-08-04
        • 1970-01-01
        • 2013-03-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多