Нужна срочно помощь, небольшая программка, программирование в линуксе |
Здравствуйте, гость ( Вход | Регистрация )
Нужна срочно помощь, небольшая программка, программирование в линуксе |
eu8cc |
31.5.2010, 11:59
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 31.5.2010 Пользователь №: 1769 Спасибо сказали: 0 раз(а) Репутация: 0 |
Помогите с программкой, не могу понять как написать ее:
написать программу, находящую в заданном каталоге и всех его подкаталагах все файлы заданного размера. Имя каталога задается пользователем в качестве третьего аргумента командной строки. Диапазон (мин мах) размеров файлов задается пользователем в качестве первого и второго аргумента командной строки. Программа выводит результат поиска в файл(четвертый аргумент командной строки) в виде полный путь, имя файла, его размер. На консоль выводиться сообщения числа просмотренных файлов. На линуксе |
|
|
Iron Bug |
31.5.2010, 12:05
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
а что непонятного в задании?
собственно, была какая-то попытка её решить вообще? задания обычно даются с вполне конкретной целью - научить человека думать. |
|
|
eu8cc |
31.5.2010, 12:50
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 31.5.2010 Пользователь №: 1769 Спасибо сказали: 0 раз(а) Репутация: 0 |
Как можно сделать поиск по размеру? |
|
|
Iron Bug |
31.5.2010, 12:57
Сообщение
#4
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
а где у тебя сам обработчик обхода дерева, собственно? символ tree вообще непонятно где определён. у меня тут линя нет, но что-то я не припомню такой стандартной функции.
|
|
|
eu8cc |
31.5.2010, 13:07
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 31.5.2010 Пользователь №: 1769 Спасибо сказали: 0 раз(а) Репутация: 0 |
tree это есть моя функция обработки, тока как ее написать???
|
|
|
Iron Bug |
31.5.2010, 13:16
Сообщение
#6
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
дык, элементарно: проверяй флаги, запрашивай размер файла и проверяй его на валидность. если удовлетворяет заданным условиям - то пиши в лог.
по-тупому параметры типа файла вывода и границ размера можно через глобальные переменные передавать в функцию обработки. ибо всё равно однопоточная прога и никаких проблем быть не должно. |
|
|
eu8cc |
31.5.2010, 13:47
Сообщение
#7
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 31.5.2010 Пользователь №: 1769 Спасибо сказали: 0 раз(а) Репутация: 0 |
по ходу так?
|
|
|
Iron Bug |
31.5.2010, 14:57
Сообщение
#8
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
ну, что-то похожее.
|
|
|
eu8cc |
31.5.2010, 15:41
Сообщение
#9
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 31.5.2010 Пользователь №: 1769 Спасибо сказали: 0 раз(а) Репутация: 0 |
Проверте, раюотает или нет
и как определить полный путь к файлу? |
|
|
alex977 |
31.5.2010, 15:57
Сообщение
#10
|
Активный участник Группа: Участник Сообщений: 310 Регистрация: 19.6.2008 Из: Россия, МО, г.Мытищи Пользователь №: 206 Спасибо сказали: 77 раз(а) Репутация: 8 |
... ftw(argv[3],tree,0); //обход дерева ... Из книжки А.Роббинс. Linux: программирование в примерах. Пер с англ. - М.: КУДИЦ-ОБРАЗ, 2005. - 656 с. Глава 8 Цитата Со временем стало ясно, что интерфейс ftw() не вполне выполнял свою работу; например, первоначально он не поддерживал символические ссылки. По этим причинам к Х/Ореn Portability Guide, который теперь является частью POSIX, была добавлена nftwO («new (новая) ftw()» [важно]). eu8cc, похоже, что эта книжка будет тебе полезной, раз под Линукс прогр-ть собираешься. |
|
|
Текстовая версия | Сейчас: 1.12.2024, 10:19 |