如何在bash中列出名称中带有空格的子目录

时间:2018-08-28 23:38:32

标签: bash ubuntu ubuntu-16.04

我发现了一些与此类似的问题,但令人惊讶的是,没有一个问题对我有用。

这是用脚本编写的:

for d in $(ls -d "$1"); do echo $d done

$ 1是我希望为其打印出子目录列表的父目录,但是,运行该命令会打印出,例如,一个名为“带有空格的目录”的目录,在单独的行上为3个单词。

1 个答案:

答案 0 :(得分:5)

您可以使用Shell Globing代替进程替换,这不会遇到单词扩展问题:

Product

或者您可以采用非常常见的# to include dotfiles and not iterate empty directory shopt -s dotglob nullglob for d in "$1"/*; do echo "$d" done 模式。