Моя библиотека - социальная сеть любителей книг

RM

Linux 23.03.2010

Интро

Случалось ли вам, работая в консоли, командой подобной этой “rm -rf ./*”, удалять все добро нажитое непосильным трудом? Случалось? ))) Вот и я на днях допустил такой промах. Не посмотрел в какой директории находился и вместо очистки временного каталога, очистил каталог с проектами.

Решение

Из сложившейся ситуации я вынес урок - при удалении всегда нужно указывать полный путь. Таким образом вариант с удалением нужных данным будет сведен к минимуму.

Но все мы люди. А большинство людей ленивы. Поэтому вариант с полным путем не всегда пригоден. А стандартная утилита rm не удаляет файлы в корзину.

Исправим это:

sudo aptitude install trash-cli

потом добавил алиас:

vim ~/.bashrc

и добавляем строчку:

alias rm='trash'

рестартимся и готово: rm - помещает файлы в корзину!

Разукрасим SVN

Linux 09.02.2010

Интро

Новый год для меня начался хорошо - я сменил работу и переехал в столицу нашей родины. А вместе с работой решил сменить и основную рабочую систему - с Windows XP на Ubuntu 9.10 )

Теперь приходится использовать SVN в консоли, т.к. nautilussvn, мягко говоря очень ограничен в функциональности, либо у меня просто не хватило терпения с ним разбираться.

Установка

  1. sudo aptitude install colordiff
  2. nano ~/.subversion/config
  3. находим параметр diff-cmd и прописываем diff-cmd = colordiff

Все, теперь svn diff будет цветным.
При использовании less не забудьте параметр -R:

svn diff | less -R

иначе less удалит раскасску.

Django & Cron

Программирование 15.04.2009

Интро

В предыдущей статье я описывал как выкладывать Django-проект на сервер и можно сказать попутно выкладывал. =) Но на этом мои “мучения” не закончились - оказалось, что я не знаю как прикрутить вызовы частей приложения по Cron.

Погуглив и почитав, решение нашлось… и оно оказалось намного приятнее решения на php ;)

Решение

В корневой директории проекта, в моем случае publishing, создаем фалик run.py:

# -*- coding: utf-8 -*-
import sys
import settings
from django.core.management import setup_environ
setup_environ(settings)
module_name = sys.argv[1]
exec('import %s' % module_name)
exec('%s.%s' % (module_name, ' '.join(sys.argv[2:])))

Update: Спасибо Александру Кошелеву за ценный комментарий.

И теперь при помощи этого скрипта мы можем вызывать функции наших “вьюшек” из командной строки и из cron:

# python /path/to/project/run.py report.views "send_emails()"

Таким образом у нас выполниться report.views.send_emails()
Все, остается вызвать crontab -e и добавть выше описанную команду.

Как всегда, все просто. =)

Django + Nginx + FastCGI

Linux, Программирование 14.04.2009

Интро

Уже пару месяцев я разбираюсь с Python & Django. И вот настало время выкладывать свои художества в сеть ) Правда, мой первый сайт на Django посвящен ведению отчетов по работе. Он довольно прост и хвалиться нечем. Вместо этого я расскажу как просто развертывается проект на Django + Nginx + FastCGI.
Читать полностью »

Памятка по ffmpeg

Linux 12.09.2008

Интро

Этот пост, так сказать, запись в “склерозник”, но думаю будет полезна и читателям блога.

Конвертация AVI в FLV

ffmpeg -i video.avi -ar 22050 -ab 32 -f flv -s 320×240 video.flv

Создание “превьюшки”

ffmpeg -i movie.flv -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320×240 movie.jpg

З. Ы.

Кстати, готов принимать поздравления - сегодня моему блогу ровно год )))


Copyright, 1983 – 2010