У меня есть две основные папки «Пеликулы» и «Серии», как вы можете догадаться, на них есть фильмы (некоторые из них находятся в собственной папке, в которых более 1 файла), а в папке «Серии» - телешоу.

Мне нужна командная строка или скрипт, чтобы я мог сжать каждый субтитр (файл .srt) и переместить его в домашнюю папку, например ~/MovieSubtitles/We Own The Night.zip и ~/SeriesSubtitles/Masters of Sex S01E11 - Phallic Victories.zip

Структура папок выглядит примерно так:

on Movies:

Peliculas
|-10 Things I Hate About You (1999) BRRip 1080p
|-10,000 B.C. (2008) BRRip 1080p
|-10th & Wolf (2006) DvDRip
etc...

on Tv Shows:

Series
|-Anger Management
| |-Anger Management 1x
| |-Anger Management 2x
|-Breaking Bad
| |-Breaking Bad 1x
| |-Breaking Bad 2x
| |-Breaking Bad 3x
etc..

А также. Что ж. У меня есть много. На самом деле очень много, поэтому мне нужен сценарий. Не могу сделать это вручную и хочу сохранить резервную копию каждого субтитра на папках, упомянутых ранее, поэтому я могу загрузить их и сделать их доступными при необходимости, как на сайте субтитров yifi

Так что мне нужно, чтобы сжать каждый srt в папке Peliculas рекурсивно и Series также рекурсивно (но в этом случае на 2 уровня, так как каждый сезон также находится в подпапке внутри папки серии), сохраняя имя файла srt и поместите почтовый индекс в папку на моем доме.

Есть идеи?

/*************
*   Edited
*************/

Google .... ing.?... я пришел с этим решением:

:~$ find /media/peliculas/ -name *.srt -exec zip '{}'.zip ~/subtitulos/peliculas/

(попробовал -iname ' srt', -iname '.srt' , -name '* srt' и другие, основанные на идее Бендрами, и это все то же самое)

* найти / СМИ / Peliculas -name .srt выводит список целых SRT файлов (субтитры) на папку Peliculas ... но как только я использую -exec

я получил ошибку => найти: отсутствует аргумент '-exec'

так что плз помогите ....

для некоторых дополнительных очков ..:P может быть лучше назвать zipfile как папку, содержащую файл srt, так как он имеет полное название фильма, год и качество.

2 ответа2

0

Поместите этот скрипт в ваш домашний каталог:

#!/bin/sh
x=`basename $1`
zip $2/${x}.zip $2/${x}
rm $2/${x}

Тогда беги

find /path/to/subtitles -iname '*srt' -exec ~/yourscript.sh {} /path/to/zip/directory

Если у вас есть какие-либо столкновения, он подскажет вам, что делать.

0

Я получил это работать таким образом с 2 линиями ..

1)

 find  -name *.srt -exec  zip -D9 '{}'.zip '{}' \;

то, что это делает, - это найти любой SRT (файл субтитров) внутри папки, в которой вы его выполняете ... в моем случае .... /media /peliculas (которая содержит все мои фильмы) и лучше сжать его без записей каталога не добавляет мусор, но он добавляет папку с фильмами ... работал для меня в конце ... хотел бы отшлифовать его) каждый srt в своем собственном zip-файле, называемом srt-файлом ... так что подзаголовок от доктора Strangelove или How Я научился перестать беспокоиться и любить бомбу, она сохранена в zipfile, который называется Dr. Strangelove или Как я научился перестать беспокоиться и любить бомбу.srt.zip

2)

find -name '*.zip' -exec mv '{}' ~/subtitulos/peliculas/ \;

и это ... последняя часть ... ну, он перемещает все zip-файлы в папку в моем доме, где я буду хранить заархивированные сабвуферы ... и загружать их на сайты субтитров ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .