IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> скрипт Shell, команда Find
сообщение
Сообщение #1


Влюблённый псих
***

Группа: Пользователи
Сообщений: 185
Пол: Женский
Реальное имя: Лейла

Репутация: -  1  +


Вопрос насчет команды find в командной строке Linux.
Например, если я ввожу find. -name "*a*" -exec rm {} \; , то удаляются все файлы, содержащие в своем название символ "a". А как сделать так, чтобы удалялись только те файлы, имена которых оканчиваются на символ "a"?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


N337
****

Группа: Пользователи
Сообщений: 737
Пол: Мужской

Репутация: -  26  +


Все должно работать:
Код
symbiot7@v51:~#find . -name "*a" -exec echo "Found: {}" \;
Found: ./htdocs/pma                                      
Found: ./htdocs/pma/contrib/packaging/Fedora              
find: ./bin: Permission denied                            
Found: ./tmp/sess_424fef7bc6e6ccab4f3ac26e5584799a        
Found: ./tmp/sess_34d01ee27efe191c57c7e01f882a735a        
Found: ./tmp/sess_7cfa12eda713fe97a1b64d77694623ea        
Found: ./copyarea                                        
symbiot7@v51:~#


Может ты не поставила пробел перед \; ? Что говорит sh?


--------------------
The idiots are winning.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Влюблённый псих
***

Группа: Пользователи
Сообщений: 185
Пол: Женский
Реальное имя: Лейла

Репутация: -  1  +


Вот когда я прописываю в исполняем файле sh так
find . -name "*a" -exec echo "Found: {}" \;
то он не находит ничего при этом не выдает никаких сообщений.
А когда я написала вместо "*a" вот так "*txt" то он нашел все текстовые файлы. Тогда я пришла к выводу, что он ищет расширения. То есть если я создам файл с именем file.a то он отобразит его. А вот файл aaa.txt уже нет. (хотя окончание на символ a)
Может, попробывать сделать это с помощью цикла? например пробегаем название файла пока символ не есть точка. Как только равен точка (дальше идет расширение) проверяем равен ли предыдущий символ нужному нам значению, и если да, отображаем его. Или это бред? dry.gif

З.Ы. "*a^" так тоже не находит. (даже если расширение файла оканчивается на a)

Сообщение отредактировано: Тёмный Эльф -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 6.05.2024 14:28
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name