作者:手机用户2502863297 | 来源:互联网 | 2022-12-06 13:14
我发现了一些类似的问题,但令人惊讶的是,它们都不适合我.
我用脚本编写了这个:
for d in $(ls -d "$1"); do
echo $d
done
$ 1是我希望打印出子目录列表的父目录,但是,运行它打印出来,例如,名为"dir with spaces"的目录在不同的行上作为3个单词.
1> weirdan..:
您可以使用shell globbing而不是进程替换,它不会受到字扩展问题的影响:
# to include dotfiles and not iterate empty directory
shopt -s dotglob nullglob
for d in "$1"/*; do
echo "$d"
done
或者你可以诉诸相当普遍的find ... -print0 | xargs -0 ...
模式.