kotnaton писал(а): ↑13.09.2011 02:50
for i in "$@/dos/TS/iii/*" ; do ffmpeg -i $i -vcodec copy -copytb -copyts -acodec copy -f mp4 '111/$i.avi' ; done
Вместо этого, программа просто переписала исходники, погубив мою видеоколлекцию, к несчастью, не было запасных копий.
После do сначала можно было echo вокруг ffmpeg написать. Уж сколько раз на форуме разговаривали о пробелах в именах, скрипты приводили рекурсивно переименовывающие пробелы в именах в «_» — а воз и ныне там.
Можно, например, так:
Код: Выделить всё
find -type f -print0|xargs -0 -I '{}' ffmpeg -i '{}' -vcodec copy -copyts -copytb -acodec copy '{}'.avi
О чем в этой теме упоминалось.
kotnaton писал(а): ↑13.09.2011 02:50
Прошу прощения просто накипело: это не первый, и не второй раз, пингвин теряет, то, что копилось месяцами... Спрашивается в задачнике: кому нужна такая ОС, с непонятным командным языком, да к тому же постоянно обновляемым, до состояния несовместимости ?
Причем здесь «пингвин» ☺? Поразительное заявление, феерично подменяющее понятия. Речь же исключительно об использовании оболочки и стандартных утилит. Если вам (лично вам, не всем же, разумеется) не понятен используемый вами командный язык, то не используйте его. Используйте другой. Оболочек, вообще-то много больше чем одна. Ну или perl, скажем, вполне можно запускать интерпретатором ☺.
А лучше просто выучите стандартный sh. А проще всего — не использовать пробелов в именах. Если переименовать нельзя — торрент, например, раздается, то есть же хардлинк — всего две буквы — ln.
А вообще, очевидно, что потеря чего-либо после команды пользователя — не есть потеря по вине ОС. Это ж не какой-нибудь баг в ФС, убивший данные.