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

Кодировки текста

Для конвертирования текстового файла из одной кодировки в другую, служит команда iconv.

# iconv -f  -t  
# iconv -f ISO8859-1 -t UTF-8 -o file.input > file_utf8
# iconv -l                           # Список всех поддерживаемых кодировок

Без опции -f, iconv будет использовать локальную кодировку.

Символы новой строки Unix - DOS

Конвертирование символов новой строки DOS(CR/LF) в Unix формат и обратно. Смотрите так-же dos2unix и unix2dos.

# sed 's/.$//' dosfile.txt > unixfile.txt                  # DOS в UNIX
# awk '{sub(/\r$/,"");print}' dosfile.txt > unixfile.txt   # DOS в UNIX
# awk '{sub(/$/,"\r");print}' unixfile.txt > dosfile.txt   # UNIX в DOS

Конвертирование в Windows окружении, используя sed или awk из mingw или cygwin.

# sed -n p unixfile.txt > dosfile.txt
# awk 1 unixfile.txt > dosfile.txt   # UNIX в DOS (используя оболочку cygwin)

Конвертировать формата PDF в Jpeg и объединение PDF файлов

Конвертировать PDF в JPG (или PNG), можно с помощью gs (GhostScript), из каждой страницы будет создано отдельно изображение. Эту-же задачу можно решить с помощью convert (из ImageMagick или GraphicsMagick).

# gs -dBATCH -dNOPAUSE -sDEVICE=jpeg -r150 -dTextAlphaBits=4 -dGraphicsAlphaBits=4 \
 -dMaxStripSize=8192 -sOutputFile=unixtoolbox_%d.jpg unixtoolbox.pdf
# convert example.pdf example-%03d.png
# convert *.jpeg images.pdf          # Создать простой PDF документ из всех картинок

Кроме того Ghostscript может объединить несколько PDF файлов в один большой файл.

# gs -q -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=all.pdf \
file1.pdf file2.pdf ...              # В Windows используйте '#' вместо '='

Конвертировать форматов видео

Сжатие видео, кодеком mpeg4 с исправлением звука.

# mencoder -o videoout.avi -oac mp3lame -ovc lavc -srate 11025 \
-channels 1 -af-adv force=1 -lameopts preset=medium -lavcopts \
vcodec=msmpeg4v2:vbitrate=600 -mc 0 vidoein.AVI

Так-же смотрите ]]>sox]]>.

Копирование audio cd

Сохранить трэки можно программой ]]>cdparanoia]]> ( FreeBSD порт /usr/ports/audio/cdparanoia/), oggenc поможет конвертировать в формат Ogg Vorbis, lame конвертирует в mp3.

# cdparanoia -B                      # Копировать трэки в WAV файлы, в текущую директорию.
# lame -b 256 in.wav out.mp3         # Кодировать в mp3 с битрейтом 256 kb/s
# for i in *.wav; do lame -b 256 $i `basename $i .wav`.mp3; done
# oggenc in.wav -b 256 out.ogg       # Кодировать в Ogg Vorbis 256 kb/s