BASH:在名称中具有特定模式的目录中创建所有目录名称的数组

时间:2015-07-07 19:20:52

标签: bash

我有一个目录,其中包含一堆.zip文件以及它们的解压缩版本。我需要获取所有目录的列表并忽略.zip文件。我怎么能这样做?

我正在考虑使用grepls,但我不确定如何将它放在一起。

2 个答案:

答案 0 :(得分:6)

获取所有子目录的列表并将其存储到数组中:

shopt -s nullglob
dirs=( */ )

答案 1 :(得分:5)

如果您可以这样开启extglob

shopt -s extglob
declare -a files=( !(*.zip) )

Pattern Matching man page上查看有关bash模式匹配的更多信息。