blog vipa

blog vipa
mój dzień to 3 filiżanki kawy

PhotoIndex w /bin/sh

listopad 4, 2007 | 18:06
Nie wiem czy nie ma nic ciekawego do tworzenia indeksów dla zdjęć pod Linuksa, czy ja słabo szukałem. Gthumb mi nie odpowiada (nie umie rekursywnie robić index.htmlki), w digikam nie znalazłem (pewnie dlatego, że nie mam zainstalowanych pluginów żadnych). Anyway, chciałem, żeby wypluło mi "to coś" stronę w HTML z miniaturkami, tak, żebym nagrywając na DVD miał obraz tego, co się na płycie znajduje bez otwierania każdego zdjęcia. Klikać na "Plain Text".
CODE:
  1. #!/bin/sh
  2. IFS="
  3. "
  4. mkdir -p _thumbs
  5.  
  6. files=`find . -type f | sort`
  7. d=""
  8.  
  9. echo "<!-- Piotr Budny, vip@lcm.pl --><html><head><title>PhotoIndex</title></head><body>"> index.html
  10. echo "<h1>PhotoIndex; Wygenerowano `date`</h1>">> index.html
  11. for f in $files
  12. do
  13. if [ "$d" != "`dirname $f`" ]
  14. then
  15. d=`dirname $f`
  16. echo "<br/>">> index.html
  17. echo "<h2>$d</h2>">> index.html
  18. fi
  19.  
  20. echo $f
  21. b="_thumbs/`basename $f`"
  22. t=`exiv2 $f`
  23. convert -scale 160x $f $b
  24. echo "<a href='$f'><img src='$b' border='0' title='$t' /></a> ">> index.html
  25. done
  26.  
  27. echo "</body></html>">> index.html

Powiązane wpisy

Komentarze: 7 »

  1. http://sourceforge.net/projects/shalbum
    Zdarzało mi się używać. Całkiem wygodny i dopracowany
    skrypt. Pure shell (wymaga oczywiście ImageMagick).

    Komentarz od duddits, listopad 4, 2007 @ 19:52

  2. Fajne :)
    Tak z czystej ciekawości - po co jest zmienna(?) IFS na początku?

    Komentarz od Krystian, listopad 5, 2007 @ 00:15

  3. duddits: jutro popatrzę sobie na ten projekt, a komentarz czekał po prostu na moderację :)
    Krystian: IFS to takie cudo, które mówi o tym w jaki sposób oddzielać parametry. Zauważ, że polecenie find zwróci nazwy plików w osobnych liniach. Jeżeli zostawię defaultowo (IFS=białe znaki) to jeżeli w ścieżce wystąpi spacja, zostanie ona podzielona na tyle pozycji, ile jest białych znaków (w wyniku da to pociachane, niekompletne ścieżki). Ustawiając na znak nowej linii, dostanę tyle parametrów dla fora, ile jest linii.
    Więcej w `man bash`, szukaj IFS.
    Btw, dużo lepiej byłoby odpalać finda oddzielając pozycje znakiem zero i używać xargs do odpalania converta, ale ja lubię używać IFS :)

    Komentarz od vip, listopad 5, 2007 @ 02:19

  4. No tak, już kiedyś to czytałem (w man bash), ale jakoś nie skojarzyłem… Dzięki, może tym razem zapamiętam.

    Komentarz od Krystian, listopad 5, 2007 @ 09:01

  5. vip: o ja głupia … :) Tyle techniki to człowiek gubi się w końcu!

    Zdrowia!

    Komentarz od duddits, listopad 5, 2007 @ 11:08

  6. hm.. ja używam igal ;)
    Też ładnie działa

    Komentarz od Andrzej Dopierała, listopad 8, 2007 @ 12:12

  7. Andrzej Dopierała » niestety nie umie rekursywnie się kręcić ;)

    Komentarz od vip, listopad 9, 2007 @ 15:42

Kanał RSS komentarzy TrackBack URI

Dodaj komentarz

Comments may need an approval.