Прощавай F-Spot або як я порівнював файли
![]()
Колись, під старим добрим KDE я використовував Digikam для керування своїми фотографіями. Після переходу на Ubuntu і Gnome, я вирішив використовувати щось рідніше для Гнома і “погодився” на штатний для Ubuntu F-Spot.
Виглядав F-Spot ніби нормальним, але мав одну особливість – вперто хотів імпортувати фотографії сторюючи стуруктуру директорій РІК/МІСЯЦЬ/ДЕНЬ. А в мене вони були як мені було зручно (АЛЬБОМ/ПІДАЛЬБОМ, або РІК.МІСЯЦь). Мене раніше це не хвилювало бо Digikam показував мені теки сортовані за датою, тому як би я їх не називав – бачив завжди в інтиїтивно-зрозумілому представлені.
А нова структура, що використовується в F-Spot, так замахувала мене (треба ж спеціально виставляти налаштування при імпорті, щоб використовувати довільну структуру тек) що я вирішив погодитись з F-Spot і перетворити усю колекцію у структуру “РІК/МІСЯЦЬ/ДЕНЬ”.
Перетворив. Спочатку було ніби нормально, а потім сильно пошкодував.
- F-Spot досить гальмівна програма
- Знайти фото в F-Spot дуже непросто, гортаючи тисячі фото в декілька рядів
- Відсутня структура за теками (ніяких тобі “Юрі-28″ чи “Хрестини андрійчика”), лише вручну встановлені мітки
- Не імпортувались відеофайли (всі мої AVI зняті фотоапаратом пропали!)
- Файли розкинуто по директоріях-датах по даних Exif (а виявилось я мав купу “чужих” фото знятих з не налаштованою датою в фотоапараті)
- Якщо файл було змінено (відредаговано) то в F-Spot він розташувався в директорії відповідно до дати ост. редагування, а не оригінальної директорії-альбому, разом з іншими фото того ж дня
Коротше фіаско. Навіть моя Галя, яка не часто працює з фотоальбомами, різко негативно оцінила зручність роботи в F-Spot (я вже мовчу що пропали всі теги з Digikam).
Я спробував поставити Digikam в Gnome (безпосередньо з репозиторію). По-перше, виявилось що він зовсім мало встановив з середовища KDE (чого я найбільше боявся) , а по друге працює шустро, значно швидше F-Spot і має можливості редагування яких і близько нема в F-Spot (мої RAW від Nikon відкриваються “на ура”).
Але от халепа – усі мої файли в структурі сортованій по даті. Як не
парадоксально, але в позбачлених відзнак директорія знайти потрібні
фото – дуже важко! Це дуже погана ідея змушувати міняти структуру для
роботи певної програми! Щоб Ви зрозуміли пікантність ситуації, йдеться десь про 5000 файлів.
Тому я вирішив відновлювати фотоколекцію з CD/DVD архівних копій
(крім останніх 3-х місяців все мало й архіви). Виявилось що два CD (з
десяти) були “підбиті”. З DVD проблем не було. Файли з “битих” дисків
переписував з існуючих директорій F-Spot вручну.
І ось виникла задача: як перевірити що нова колекція, відновлена з
резервних копій містить усі файли що були у колекції F-Spot? Треба
перевірити чи всі фото що є у F-Spot (які я вже переписав в іншу
директорії, “набік”) мають копію у /home/user/Pictures (яка вже має
іншу структуру).
Перше що мені прийшло на думку – просто отримати перелік файлів з
обох директорій і порівняти їх. Складність була хіба в тому щоб
отримати прелік назв файлів, без шляху до файлу, щоб порівнювати
однакові дані.
Отримав перелік усіх файлів зі шлахами (у відповідних директоріях):
#find -name “*.*” > old.list
#find -name “*.*” > new.list
Отримав прелік файлі відрізавши шлях до файлу (split – ділить
стрічку з повною назвою файлу на частини, використовуючи слеш “/” як
розділювач і друкує останній елемент отриманого масиву (a) що
складається з частин стрічки):
#awk ‘{split ($0, a, “/”); print a[split ($0, a, "/")]}’ new.list > new
#awk ‘{split ($0, a, “/”); print a[split ($0, a, "/")]}’ old.list > old
Тепер файл “old” містить усі назви файлів з старої структури F-Spot, а
файл “new” містить усі назви файлів з нової директорії фотографій.
залишилось їх порівняти і визначити чи є в “old” назви якиз нема в
“new”. Чомусь просте “diff old new” мені не підійшло – навіть
посортувавши імена файлів порівнювались цілі блоки, а не стрічки, тому,
візуально результат не сприймався.
Тут я вирішив вистрілити “гарматою по горобцях” – завантажив файли у
відповідні таблиці MySQl бази “new” і “old” і виконав SQL-запит щоб
порівняти таблиці:
SELECT * FROM old
WHERE filename NOT IN
(
SELECT filename FROM new
);
В результаті отримав перелік з близбко 300 файлів які були на диску
в директорії F-Spot але чомусь не потрапили, свого часу, до резервних
копій на диски. Я знайшов переписав їх з F-Spot в нову директорію
(благо здебільшо це виявлялись цілі пропущені альбоми).
Висновки:
- Бережи резервні копії змолоду
- F-Spot не рулез
- Digikam – рулез

Digikam чемно просканував всю мою структуру і показує мені все за
датою, за директоріями, за директоріями по даті, за директоріями по
імені – сиджу і радію! Чудовий інтерфейс, редагує фото, купа фільтрів, розуміє RAW з пів-слова, червоні
очі забирає – хай Picasa сховається (до речі Picasa теж
підгальмовувала, хоча і можна використовувати), “бачить” і фото і відео.
P.S.
В пошуках фотоорганізаторів надибав RAW-редактор (прощавай Adobe Lightroom?) – RawTherapee: безкоштовний редактор для Unix/Linux/Mac/Windows. Виглядає просто, але пристойно. Я тішуся і Вам раджу!
RawTherapee:
4 Comments to “Прощавай F-Spot або як я порівнював файли”
Бажаєте залишити коментар?
- Ілюзія Адельсона. Клітинки A і B насправді мають однаковий колір: http://is.gd/elFqN
- Оновлення неофіційної прошивки на Android 2.2 для HTC Hero: http://is.gd/ejUsu #android #hero
- Емулятори радянських ігрових автоматів! :) http://15kop.ru/
Нове
Випадкове
Останні коментарі
- Buka до Рятуємось від спеки, підручними засобами ;)
- Dyak до Сервіс по-китайськи
- jin до Зламався телефон
- Микола до З Днем народження, Україно!
- tivasyk до Кепка «Ubuntu»















Мене теж F-Spot вбиває
Дякую за статтю, спробую і собі Digikam…
Дякую.
Аж трохи шкода шо Ubuntu такий, не останній. але не найкращий менеджер пропонує…
А мне понравился GThumb. Он есть в репозиториях. F-Spot в Ubuntu 9.04 постоянно падал, к тому же мне не нравился. Поэтому я его удалил.
Чесно кажучи, зараз, я використовую Picasa 3 для Linux. Зручно працювати, зручно завантажувати фото в Picasaweb…