仅列出与通配符表达式匹配的文件夹

时间:2015-02-17 05:46:25

标签: wildcard ls

是否有一个命令列出了与通配符表达式匹配的所有文件夹?例如,如果有数千个目录,并且我只希望列出以M结尾或以JO开头的那些目录,我可以使用某个Linux命令吗?谢谢!

1 个答案:

答案 0 :(得分:1)

使用find命令,例如:

# find anything that start with 'jo' end with 'm' (case insensitive)
find . -iname 'jo*m'

之后您可以执行任何命令,例如:

# find just like above but case sensitive, and move them to `/tmp`
find . -name 'JO*M' -exec mv -v {} /tmp \;

要仅查找目录,可以使用-type d标志,例如:

# find any directory that start with JO
find . -name 'JO*' -type d

说明,第一个参数是起始目录,.表示当前目录。下一个参数表示区分大小写搜索的搜索条件-name,区分大小写搜索的-iname,项目搜索类型的-type-exec执行某些命令{} {1}}是匹配的文件名。您可以了解更多here或您的具体案例here