我有一个文件名为“ 202.png、405.png、0052.png、04050.png、......的目录” 我需要一个 find 命令来查找不包括文件名开头出现的零的文件名例如,如果我有一个文件名为 00504.png 的文件,那么当我传递参数 504.png 到 find 命令时,它必须返回文件名 00504.png,这是目录中文件的实际名称。
预期输出命令是
$ find . -name 504.png
它必须返回原始文件名 00504.png
答案1
据我所知,该find
命令-name
仅支持简单的全局匹配。但是,您可以使用以零个或多个字符为前缀-regex
的匹配:504.png
0
find . -regex '.*/0*504.png'
领先.*/
是因为-regex
是完整路径匹配。
如果您不需要递归搜索,那么 bash 之类的 shell 可能会提供扩展的 glob,允许使用如下表达式:*(0)
printf '%s\n' *(0)504.png
检查您正在使用的 shell 的文档。