У меня есть каталог, содержащий несколько файлов, некоторые из которых имеют пробелы в именах:
Test workspace/
Another directory/
file1.ext
file2.ext
demo 2012-03-23.odp
Я использую команду GNU $(wildcard)
в этом каталоге, а затем перебираю результат с помощью $(foreach)
, распечатывая все. Здесь код:
FOO := $(wildcard *)
$(info FOO = $(FOO))
$(foreach PLACE,$(FOO),$(info PLACE = $(PLACE)))
Вот что я ожидаю увидеть распечатанным:
Test workspace
Another directory
file1.ext
file2.ext
demo 2012-03-23.odp
Вот что я на самом деле получаю:
Test
workspace
Another
directory
file1.ext
file2.ext
demo
2012-03-23.odp
Последнее, очевидно, бесполезно для меня. документация для $(wildcard)
flat-out заявляет, что возвращает "список имен, разделенных пробелами", но полностью не признает огромные проблемы, которые возникают. Также документация для $(foreach)
.
Можно ли обойти это? Если да, то как? Переименование каждого файла и каталога для удаления пробелов не является вариантом.