Пакетное переименование файлов изображений

Судя по всему, ffmpegсчитывается из стандартного ввода, что мешает команде read. Так что я направляюсь к/dev/null

ls video/hq | cut -d. -f1 | while read line ; do
  HQ=./video/hq/$line.mp4
  LQ=./video/lq/$line.mp4
  ffmpeg -i $HQ -crf 40 $LQ < /dev/null
done;
0
27.09.2019, 13:22
1 ответ
rename -n '$_=lc; s/(cmyk|freigestellt|render|3d|_|-)//g' *.jpg

Здесь используется perl команда переименования (, также известная как prenameиfile-rename). Это , а не , которую следует путать с командой renameиз утилиты -linux, которая имеет совершенно другие параметры и возможности строки команды -.

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

Опция -nприводит к тому, что renameвыполняется пробный -прогон -, он покажет вам только то, что он будет делать, если вы позволите. Чтобы он действительно переименовывал файлы, удалите -nили замените его на -vдля подробного вывода.

напр.

$ touch BILD{00..05}_CMYK_freigestellt_RENDER_3D.jpg
$ rename -v '$_=lc; s/(cmyk|freigestellt|render|3d|_|-)//g' *.jpg
BILD00_CMYK_freigestellt_RENDER_3D.jpg renamed as bild00.jpg
BILD01_CMYK_freigestellt_RENDER_3D.jpg renamed as bild01.jpg
BILD02_CMYK_freigestellt_RENDER_3D.jpg renamed as bild02.jpg
BILD03_CMYK_freigestellt_RENDER_3D.jpg renamed as bild03.jpg
BILD04_CMYK_freigestellt_RENDER_3D.jpg renamed as bild04.jpg
BILD05_CMYK_freigestellt_RENDER_3D.jpg renamed as bild05.jpg
1
28.01.2020, 02:39

Теги

Похожие вопросы