Поиск файлов в bash
Модераторы: /dev/random, Модераторы разделов
-
DsTr
- Сообщения: 374
- ОС: Arch x64
Поиск файлов в bash
Мой скрипт основан на найденом в интернете алгоритме рекурсивного поиска файлов основывающийся на "for dir in `echo *`".Все бы хорошо - но файлы с пробелами он разделяет на несколько файлов...Пробовал такие хитрости как проверка на существование файлов и затем сложения последующих резильтатов,ставя между ними пробел до тех пор пока не получится существующий файл...Но потом понял,что фигня все это...
Я вот ище посмотрел "find",он ищет нормально - но как разложить результат поиска по строкам - не знаю...
Вобщем подскажите как искать файлы не смотря на пробелы..
Я вот ище посмотрел "find",он ищет нормально - но как разложить результат поиска по строкам - не знаю...
Вобщем подскажите как искать файлы не смотря на пробелы..
JID:dstr@jabbus.org
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Поиск файлов в bash
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
slasher
- Сообщения: 92
- ОС: Arch
Re: Поиск файлов в bash
Может быть
или
Смысел в кавычках
А лучше, наверно,
Код: Выделить всё
for dir in "$(echo *)"или
Код: Выделить всё
for dir in "`echo *`"Смысел в кавычках
А лучше, наверно,
Код: Выделить всё
for dir in "`ls`"Today would be a good day to DIE.
-
Portnov
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: Поиск файлов в bash
ls * | while read FILE; do echo "File: $FILE"; done
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
-
slasher
- Сообщения: 92
- ОС: Arch
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Поиск файлов в bash
for dir in "$(ls)"; do echo "$dir"; done
вот так тоже работает, все-равно интересно чем find неугодил.
ЗЫ: пардон, так не работает
вот так тоже работает, все-равно интересно чем find неугодил.
ЗЫ: пардон, так не работает
-
slasher
- Сообщения: 92
- ОС: Arch
Re: Поиск файлов в bash
Почему не работает? Пробелы обрабатываются корректно.
Today would be a good day to DIE.
-
DsTr
- Сообщения: 374
- ОС: Arch x64
Re: Поиск файлов в bash
Надо чтоб в строке был один путь...А как разделить вывод файнд по строкам - хз..
slasher,
В ковычках - вообще один раз цикл проходит,походу for всего-лишь разделяет строку на несколько через пробелыю,так что for - отменяется..Надо думать нащет find'а,покажите на примере как им пользоваться...
slasher,
В ковычках - вообще один раз цикл проходит,походу for всего-лишь разделяет строку на несколько через пробелыю,так что for - отменяется..Надо думать нащет find'а,покажите на примере как им пользоваться...
JID:dstr@jabbus.org
-
slasher
- Сообщения: 92
- ОС: Arch
Re: Поиск файлов в bash
Так ведь find и так выводит в одной строке один путь, а вот echo * все одной строкой выводит
Today would be a good day to DIE.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Поиск файлов в bash
угу, только получается $dir как одна большая переменная ... это тоже самое что написать:
dir="$(ls)";
echo $dir;
попробуй:
for dir in "$(ls)"; do echo \"$dir\"; done
например, и посмотри что будет взято в кавычки ...
-
slasher
- Сообщения: 92
- ОС: Arch
Re: Поиск файлов в bash
Тогда может стоит писать
Код: Выделить всё
for dir in ./*; do echo "$dir"; doneToday would be a good day to DIE.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Поиск файлов в bash
slasher писал(а): ↑28.08.2007 20:57Тогда может стоит писать
Код: Выделить всё
for dir in ./*; do echo "$dir"; done
да, так похоже работает. я предпочитаю способ про который Portnov сказал, или find, тут где-то был уже топик где обсуждали эту проблему.... че-то ссылка не находится
-
DsTr
- Сообщения: 374
- ОС: Arch x64
Re: Поиск файлов в bash
slasher,
Ба-а-а-лин,мне нужен ЦИКЛ который будет искать файлы рекурсивно и в пихать строку путь к ОДНОМУ файлу,и таким образом - все файлы "обработать"...
Ба-а-а-лин,мне нужен ЦИКЛ который будет искать файлы рекурсивно и в пихать строку путь к ОДНОМУ файлу,и таким образом - все файлы "обработать"...
JID:dstr@jabbus.org
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
-
DsTr
- Сообщения: 374
- ОС: Arch x64
Re: Поиск файлов в bash
diesel, Оп!За второй вариан лютый фанкз,можно закрывать тему,спасиба всем!
JID:dstr@jabbus.org
-
slasher
- Сообщения: 92
- ОС: Arch
Re: Поиск файлов в bash
"Образец" цикла Вы сами предложили, так что...
Тем более даже из моего цикла можно сделать, то, что Вам надо (но не надо, find гораздо лучше)
Today would be a good day to DIE.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Поиск файлов в bash
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Поиск файлов в bash
Shell
$ find /etc/groff/ |xargs -I xx echo xx1 xx2 xx3
/etc/groff/1 /etc/groff/2 /etc/groff/3
/etc/groff/mdoc.local1 /etc/groff/mdoc.local2 /etc/groff/mdoc.local3
/etc/groff/man.local1 /etc/groff/man.local2 /etc/groff/man.local3Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: Поиск файлов в bash
find -ls
PS: diesel
вам похоже на работе клавиатуры выдают раз в месяц, судя по тому, что вы такие запутанные команды любите писать. ;) а у меня клавиатуры свои :(
-
ZyX
- Сообщения: 355
- ОС: Gentoo
Re: Поиск файлов в bash
Aug 29 2007
Mar 6 2010
Это вы специально?
Mar 6 2010
Это вы специально?
-
smaharbA
- Сообщения: 229
- ОС: Windows Vista
Re: Поиск файлов в bash
писатели абстагироваться не пробовали ?
что с вайло, что с фором, что с файдом...
что с вайло, что с фором, что с файдом...
Я конечно далек от мысли...(с)
-
t.t
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: Поиск файлов в bash
а где вы эту тему уже раскрыли? давайте ссылку, типа "ха! я это уже написал 2 года назад!"
неплохой праздник, да? я тоже только отошёл