LINUX.ORG.RU

read(bash)


0

0

Народ помогите!
как мне читать (bash) из потока не до бланка а до конца строки
while read x; do
ls $x
done
данная конструкция читает список имен файлов но имена могут быть с пробелами :(
Как мне заставить это работать

anonymous

IFS=$'\n'
и тд
read и так читает до конца строки
у тебя проблема с ls и $x - ls видит список слов (пробел по умолчанию разбивает строку на слова) и каждое слово интерпретируетя как название директории

anonymous
()

Ничего не понял:(
Напиши плз, как правильно как будет
while read x; do
ls -la $x
done
если на вход поступают имена файлов (с пробелами)
выход - полная информация(ls -la)

anonymous
()

IFS='\n'; while read l; do ls -ald "$l"; done <list
Можно и без IFS, но тогда файл не имеет права иметь пробелы в начале
и в конце имени. Обычно это так.

io ★★
()

Все спасибо разобрался:)

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