четверг, 20 сентября 2012 г.

Непрерывная интергация на Jenkins c PHP + PHPUnit

На сегодняшний день инструментов непрерывной интерграции (Continuous Integration) PHP проектов много. Все они много чего умеют, и чем больше функционала предлагает то, или иное решение, тем трудней заставить его работать. Мне, почему-то нормальная документация попалась только по phpUnderControl на CruiseControl и Jenkins.

C CruiseControl как-то не заладилось, примеры устарели и почти не работают, поэтому Jenkins со своей работой из коробки победил. Итак, Jenkins

понедельник, 10 сентября 2012 г.

Архивы из командной строки

сжать в .tar

# tar -cvf folder.tar /path/to/folder

сжать в .tar.gz

# tar -cvzf folder.tar.gz /path/to/folder

распаковать:

# tar -zxvf archive.tgz

разбить любой файл на части:

# split -a 1 -b 400m ./film.tar.gz ./splitted_archive.tar.gz.

где:
"-a 1" - использовать один символя для суффикса (a, b, c)
"-b 400m" - бить на части по 400 мегабайт.
"./film.tar.gz" - источник
"./splitted_archive.tar.gz." - название новых файлов (в конце будут прибавляться суфиксы: splitted_archive.tar.gz.a, splitted_archive.tar.gz.b, splitted_archive.tar.gz.c)

склеить файл из частей:

# cat ./splitted_archive.tar.gz.* > ./film.tar.gz

где:
"./splitted_archive.tar.gz.*" - маска для файлов с частями
"./film.tar.gz" - результрующий файл

История команд терминала в Ubuntu

покажет на экране список ВСЕХ выполненных команд

history

выведет их в файл

history > /tmp/terminal_commands.txt

Размер папки из консоли

du -hsx /usr/home/natan
du -h /* --max-depth=0

Создание ссылок на файлы

ln -s /etc/nginx/sites-avaliable/advice.loc /etc/nginx/sites-enabled/advice.loc

Рекурсивное удаление .svn папок

Заходим в папку и в ней выполняем. Удаляются все вложенные относительно текущей

rm -rf `find . -type d -name .svn`

Список процессов mysql

Список процессов можно посмотреть из коммандной строки или через phpmyadmin.

mysqladmin -u root --password=2442591 -v processlist