LINUX.ORG.RU

Перебор файлов в bash-скрипте


0

0

Всем доброго времени суток!

Подскажите как перебрать в bash-скрипте все файлы, если имена их могут содержать пробелы например.

Пишу:

#!/bin/bash for filename in $(ls -1 "/media/storage/Andrew Blake") do echo "filename = $filename" done

однако если файл содежит пробелы, то filename принимает значения каждого из слов. Как получить поочередно в filename имя каждого файла?

anonymous

Re: Перебор файлов в bash-скрипте

Кавычки смотрят на тебя с обидой.

Sphinx ★★☆☆ ()

Re: Перебор файлов в bash-скрипте

ls | while read filename; do echo "filename = $filename"; done

а вообще, уже сто раз обсуждалось

anonymous ()
Ответ на: Re: Перебор файлов в bash-скрипте от anonymous

Re: Перебор файлов в bash-скрипте

>> ls | while read filename; do echo "filename = $filename"; done

ls -1

Плюс возможны проблемы если в начале и/или в конце имён файлов есть пробелы, но такое очень маловероятно.

Deleted ()

Re: Перебор файлов в bash-скрипте

for i in "/media/storage/Andrew Blake/*"; do something; done

annoynymous ★★ ()

Re: Перебор файлов в bash-скрипте

while read f; do
# "$f"
done

И читать список файло из потока

ip1981 ☆☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.