在Linux上遞歸地壓縮字幕文件

在Linux上遞歸地壓縮字幕文件

我有 2 個主要資料夾 Peliculas 和 Series,您可能會猜測 Peliculas 上有電影(其中一些在自己的資料夾中,其中有超過 1 個文件的資料夾),Series 資料夾中有電視節目。

我需要的是命令列或腳本,這樣我就可以壓縮每個字幕(.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 上,系列也遞歸地壓縮(但在這種情況下是2 個級別,因為每個季節也在系列資料夾內的子資料夾中),保留srt 檔案的名稱和將 zip 放在我家的一個資料夾中。

有任何想法嗎?

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

Google....ing.?

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

(嘗試過-iname'srt',-iname'.srt'、-name '*srt' 和其他基於 Bendrami 的想法,它們都是一樣的)

*尋找/媒體/電影-名稱.srt列印整個 srt 檔案(字幕)列表電影資料夾...但是一旦我使用 -exec

我收到錯誤=>發現:缺少“-exec”參數

所以請幫忙....

對於一些額外的點..:P 最好將 zip 檔案命名為包含 srt 檔案的資料夾,因為它包含電影的全名、年份和品質。

答案1

將此腳本放入您的主目錄中:

#!/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

如果發生任何碰撞,它會提示您該怎麼做。

答案2

我用兩條線讓它以這種方式工作..

1)

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

它的作用是在你執行它的資料夾中找到任何SRT(字幕檔案)..就我而言..../media/peliculas(其中包含我所有的電影)並在沒有目錄條目的情況下對其進行最佳壓縮(它不不添加垃圾,但它添加了電影文件夾...最後為我工作..想完善它)每個srt 在他自己的zip 文件上稱為srt 文件...所以字幕來自《奇愛博士》或我如何學會停止擔憂並愛上炸彈它保存在一個名為的 zip 檔案中《奇愛博士》或我如何學會停止擔憂並愛上炸彈.srt.zip

2)

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

這..最後一部分...它將所有 zip 檔案移動到我家中的一個資料夾中,我將在其中保存壓縮的字幕..並將它們上傳到字幕網站...

相關內容