суббота, 17 марта 2012 г.

Скрипт для нормализации имен файлов добавлением лидирующего нуля

Ниже представлен скрипт (набросок) для выполнения нормализации имён файлов добавлением в начало лидирующего нуля.


#!/bin/bash
# Образец скрипта для переименовывания набора файлов 1, 2 3 ... 99 в
# 01, 02, 03 ... 99
# Andrew G. Saushkin 17/03/2012

# Паттер [^0]*.[mM][pP]4 выбрет все файлы по нашему расширению, которые не
# начинаются с лидирующего нуля, те которые начинаются с нуля по умолчанию
# будем считать уже обработанными.
for i in $(ls [^0]*.[mM][pP]4)
do
    # Дополнительно нормализуем расширение файла нижним регистром.
    new_file="$(printf "%02d.mp4\n" "${i%.*}")"
    # Проверка, если имя нового файла, не равно старому, то копируем (или
    # проводим другие действия, как в данном случае)
    if [ "$i" != "$new_file" ]
    then
        mv -v $i $new_file
    fi  
done

        
Дополнительно ниже скрипт, чтобы перекодировать все файлы mp4 в формат avi для просмотра на дешёвом бытовом плеере.

#!/bin/bash                                                                                                                           

mkdir -p AVI
for i in $(ls *.[mM][pP]4)
do
    new_file="AVI/${i%.*}.avi"

    if [ ! -e $new_file ]
    then
        mencoder -idx "$i" -ovc xvid -xvidencopts bitrate=2200 -vf scale -zoom -xy 720 -oac mp3lame -o "$new_file"
    fi 

done
 

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

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