Страница 1 из 1

опять 25!bash-скрипт не пашет.

Добавлено: 2008-11-20 18:54:04
Toxa
Здравствуйте!
такая проблема:кодировалось много видео из mov в flv с помощью скрипта.но из-за некоторых причин кодирование остановилось.после кодирования должны были остаться и mov-файлы и flv с такими же именами в тех же дирах!теперь надо продолжить это дело.но теперь надо проверять есть ли flv-файл!если нет,то кодируем,если есть-идем дальше!были внесены изменения в скрипте,но он все равно кодирует все подряд=( Помогите пожалста!!!
вот скриптик

Код: Выделить всё

#!/bin/bash

dir=/path/to/videos
find $dir -name "*.mov" | grep -v '/!!!!/' > $dir/dir.tmp
array=(`cat $dir/dir.tmp`)
for index in "${array[@]}"
do
    newfile=${index%.mov}.flv
if [ -f $newfile]
then
    continue
fi    
        mencoder $index -ofps 25 -o $newfile -of lavf -oac mp3lame -lameopts abr:br=192 -srate 44100 -ovc lavc -lavcopts vcodec=flv:aspect=16/9:keyint=50:vbitrate=5000:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf pp=lb
    
done
rm $dir/dir.tmp
где ошибка?!

Re: опять 25!bash-скрипт не пашет.

Добавлено: 2008-11-20 19:12:40
Yam

Код: Выделить всё

#!/bin/bash

dir=/path/to/videos
find $dir -name "*.mov" | grep -v '/!!!!/' > $dir/dir.tmp
array=(`cat $dir/dir.tmp`)
for index in "${array[@]}"
  do
    newfile=${index%.mov}.flv
    if [ ! -e "$newfile" ]
    then
      mencoder $index -ofps 25 -o $newfile -of lavf -oac mp3lame -lameopts abr:br=192 -srate 44100 -ovc lavc -lavcopts vcodec=flv:aspect=16/9:keyint=50:vbitrate=5000:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf pp=lb
    fi    
  done
rm $dir/dir.tmp

Re: опять 25!bash-скрипт не пашет.

Добавлено: 2008-11-20 19:25:00
Toxa
спасибо!заработало! :bn:
токо здесь

Код: Выделить всё

if [ ! -e "$newfile" ]
кавычки лишние! :smile:

Re: опять 25!bash-скрипт не пашет.

Добавлено: 2008-11-20 21:43:53
zg
Toxa писал(а):кавычки лишние!
гм.. почему? это вроде как шелл
Toxa писал(а):#!/bin/bash
а чего баш в системном бине делает? линукс?

Re: опять 25!bash-скрипт не пашет.

Добавлено: 2008-11-24 0:09:07
Гость
Toxa писал(а):

Код: Выделить всё

if [ ! -e "$newfile" ]
кавычки лишние! :smile:
просто заметка: имя файла может содержать пробелы и спецсимволы

Код: Выделить всё

$ foo="I like money, a lot of $$$!"
$ [ ! -e $foo ]
[: I: unexpected operator

Re: опять 25!bash-скрипт не пашет.

Добавлено: 2008-11-24 15:40:58
Toxa
насчет #/bin/bash-это в ubuntu
а насчет кавычек-с кавычками у меня не работало-ошибка вылезала(не помню уж какая),а убрал я их и все заработало!