...

среда, 4 сентября 2013 г.

[Из песочницы] Настройка Unix сервера. Оптимизация изображений


сегодня в 12:56


Доброго времени суток, читатели Хабрахабр.

Лирика




Существуют отличные солнечные дни, когда сидя в офисе, думая о прогулке в парке, мы вынуждены настраивать Unix сервер под интернет-проект.

Предлагаю вашему вниманию алгоритм, который ускорит вашу работу.


Полезная информация





  1. Создаем команду «unpack» для распаковки популярных архивов, добавив в файл «.bashrc» код:

    # Command «unpack»
    unpack ()
    {
    if [ -f $1 ] ; then
    case $1 in
    *.tar.bz2) tar xvjf $1 ;;
    *.tar.gz) tar xvzf $1 ;;
    *.tar.xz) tar xvJf $1 ;;
    *.bz2) bunzip2 $1 ;;
    *.rar) unrar x $1 ;;
    *.gz) gunzip $1 ;;
    *.tar) tar xvf $1 ;;
    *.tbz2) tar xvjf $1 ;;
    *.tgz) tar xvzf $1 ;;
    *.zip) unzip $1 ;;
    *.xz) unxz $1 ;;
    *) echo "'$1': Unknown method of file compression" ;;
    esac
    else
    echo "'$1' not found"
    fi
    }




  2. Устанавливаем «advpng» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://citylan.dl.sourceforge.net/project/advancemame/advancecomp/1.15/advancecomp-1.15.tar.gz';cd ~/usr/bin;tar xvzf 'advancecomp-1.15.tar.gz';cd 'advancecomp-1.15';./configure;make;cd ~/usr/bin;rm -f 'advancecomp-1.15.tar.gz';~/usr/bin/advancecomp-1.15/advpng;echo '«advpng» successfully installed on the server.'




    Пример:

    ~/usr/bin/advancecomp-1.15/advpng -z4 'file.png'




  3. Устанавливаем «gifsicle» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://www.lcdf.org/gifsicle/gifsicle-1.67.tar.gz';cd ~/usr/bin;tar xvzf 'gifsicle-1.67.tar.gz';cd 'gifsicle-1.67';./configure;make;cd ~/usr/bin;rm -f 'gifsicle-1.67.tar.gz';~/usr/bin/gifsicle-1.67/src/gifsicle -h;echo '«gifsicle» successfully installed on the server.'




    Пример:

    ~/usr/bin/gifsicle-1.67/src/gifsicle -b -O3 'file.gif'




  4. Устанавливаем «jpegoptim» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://www.kokkonen.net/tjko/src/jpegoptim-1.2.4.tar.gz';cd ~/usr/bin;tar xvzf 'jpegoptim-1.2.4.tar.gz';cd 'jpegoptim-1.2.4';./configure;make;cd ~/usr/bin;rm -f 'jpegoptim-1.2.4.tar.gz';~/usr/bin/jpegoptim-1.2.4/jpegoptim -h;echo '«jpegoptim» successfully installed on the server.'




    Пример:

    ~/usr/bin/jpegoptim-1.2.4/jpegoptim -f -o --strip-all --strip-icc --strip-iptc -m100 'file.jpg'




  5. Устанавливаем «jpegtran» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://www.ijg.org/files/jpegsrc.v8d.tar.gz';cd ~/usr/bin;tar xvzf 'jpegsrc.v8d.tar.gz';cd 'jpeg-8d';./configure;make;cd ~/usr/bin;rm -f 'jpegsrc.v8d.tar.gz';~/usr/bin/jpeg-8d/jpegtran -h;echo '«jpegtran» successfully installed on the server.'




    Пример:

    ~/usr/bin/jpeg-8d/jpegtran -copy none -progressive -outfile 'XXXXX.jpg' 'file.jpg'
    mv -f 'XXXXX.jpg' 'file.jpg'




  6. Устанавливаем «optipng» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://netcologne.dl.sourceforge.net/project/optipng/OptiPNG/optipng-0.7.4/optipng-0.7.4.tar.gz';cd ~/usr/bin;tar xvzf 'optipng-0.7.4.tar.gz';cd 'optipng-0.7.4';./configure;make;cd ~/usr/bin;rm -f 'optipng-0.7.4.tar.gz';~/usr/bin/optipng-0.7.4/src/optipng/optipng -h;echo '«optipng» successfully installed on the server.'




    Пример:

    ~/usr/bin/optipng-0.7.4/src/optipng/optipng -o7 'file.png'




  7. Устанавливаем «pngout» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://static.jonof.id.au/dl/kenutils/pngout-20120530-linux-static.tar.gz';cd ~/usr/bin;tar xvzf 'pngout-20120530-linux-static.tar.gz';cd ~/usr/bin;rm -f 'pngout-20120530-linux-static.tar.gz';~/usr/bin/pngout-20120530-linux-static/x86_64/pngout-static;echo '«pngout» successfully installed on the server.'




    Пример:

    ~/usr/bin/pngout-20120530-linux-static/x86_64/pngout-static 'file.png'




  8. Устанавливаем «pngcrush» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://ignum.dl.sourceforge.net/project/pmt/pngcrush/1.7.41/pngcrush-1.7.41.tar.xz';cd ~/usr/bin;tar xvJf 'pngcrush-1.7.41.tar.xz';cd 'pngcrush-1.7.41';make;cd ~/usr/bin;rm -f 'pngcrush-1.7.41.tar.xz';~/usr/bin/pngcrush-1.7.41/pngcrush;echo '«pngcrush» successfully installed on the server.'




    Пример:

    ~/usr/bin/pngcrush-1.7.41/pngcrush -rem alla -brute -reduce 'file.png' 'XXXXX.png'
    mv -f 'XXXXX.png' 'file.png'




  9. Устанавливаем «yuicompressor» (загрузить aктуальную версию).

    wget -P ~/usr/bin 'http://cloud.github.com/downloads/yui/yuicompressor/yuicompressor-2.4.7.zip';cd ~/usr/bin;unzip 'yuicompressor-2.4.7.zip';cd ~/usr/bin;rm -f 'yuicompressor-2.4.7.zip';java -jar ~/usr/bin/yuicompressor-2.4.7/build/yuicompressor-2.4.7.jar -h;echo '«yuicompressor» successfully installed on the server.'




    Пример:

    java -jar ~/usr/bin/yuicompressor-2.4.7/build/yuicompressor-2.4.7.jar --type js -o 'XXXXX.js or XXXXX.css' 'file.js or file.css'
    mv -f 'XXXXX.js or XXXXX.css' 'file.js or file.css'





Подводя итоги




В результате сервер готов к обработке изображенией. Достаточно написать bash-скрипт для автоматизации процессов и не беспокоится о лишних мегабайтах.



Developers, stick with Russians – work in London




Переводы с

карты на карту


Переводы

через QR-Код


Новая функция

«Мой контроль»




Возьми Lumia 925 на тест-драйв сейчас.




Впечатляющие возможности

в стильном тонком корпусе из металла




Boomburum

исследует LTE


Эволюция средств связи

в путешествии по России



Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers. Five Filters recommends:



Комментариев нет:

Отправить комментарий