среда, 29 июля 2009 г.

ffmpeg из SVN

Понадобилось на сервере поставить свежий ffmpeg. В портах он уж явно старый. Поэтому выкачали из svn
svn co svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

Далее 
./configure --disable-devices --disable-ipv6 --enable-nonfree --enable-libx264 --enable-libfaac --enable-gpl --enable-pthreads --extra-cflags=-DBROKEN_RELOCATIONS --extra-cflags=-I/usr/local/include --extra-libs=-L/usr/local/lib
gmake
gmake install

Все пользуемся новым ffmpeg

понедельник, 6 июля 2009 г.

Массовое переименование файлов с помощью утилиты find

#!/bin/sh

# Определяем глубину вложенности директорий
depth=$((`find "$1" -type d -print | \
      sed -E 's/[^\/]+//g' | \
      sort | tail -n 1 | \
      wc -c`+1));
# Макрос, переименовывающий файлы и директории
replacer='new="`dirname "{}"`/`basename "{}" | sed "s/ /_/g"`"; if [ "$new" != "{}" ]; then mv "{}" "$new"; fi;';
# Обходим все уровни вложенности
while [ $depth -ge 0 ];
do
    # Находим и заменяем 
    find "$1" -depth $depth -and -name '* *' -print -exec sh -c "$replacer" \;
    # Меняем уровень вложенности
    depth=$(($depth-1));
done;