Bash命令获取目录列表[重复]

Posted

技术标签:

【中文标题】Bash命令获取目录列表[重复]【英文标题】:Bash command to get list of directories [duplicate] 【发布时间】:2016-01-20 15:34:26 【问题描述】:

我想知道在满足以下条件的目录中获取当前目录列表的命令:

不包括隐藏目录 带空格的目录不会分成多个条目 文件(和隐藏文件)不包含在列表中

(我打算在 bash 脚本中迭代这个列表)

【问题讨论】:

使用全局表达式:*/ -- 例如for d in */; do ... 【参考方案1】:

您可以将其用于列表:

shopt -u dotglob
printf "%s\n" */

shopt -u dotglob 确保不匹配隐藏目录。

要进行迭代,您可以这样做:

for d in */; do
    echo "$d%/"
done

【讨论】:

我对 'd in */;' 的问题是不是我在每个名字的末尾都有一个斜杠 - 我怎样才能避免这种情况? 检查更新的答案。 echo "$d%/" 将剥离最后一个 /【参考方案2】:
find . -maxdepth 1 ! -name '.*' -type d

满足您的所有需求

【讨论】:

以上是关于Bash命令获取目录列表[重复]的主要内容,如果未能解决你的问题,请参考以下文章

基于ip列表的bash运行命令[重复]

临时更改 bash 中的当前工作目录以运行命令 [重复]

被另一个bash脚本调用后获取文件的当前目录[重复]

如何在bash中获取给定目录的目录数? [重复]

在bash中将包含空格的变量传递给命令[重复]

使用 Bash 查找和复制文件 [重复]