Tudom mi ez, és általában tudom is használni, de most másról lenne szó. Az A panelen sok sorozathoz tartozó avi fájl, a B panelen sok mkv fájl de rossz névvel. A sorszámot persze tartalmazza.
Például:
A panel: 1x01 - Blabla.avi
B panel: Blabal.S01E01.WEBRIP.x264.HUN-nubira.mkv
Jelenlegi megoldásom az egyesével való átnevezés sokáig tart. Amit szeretnék az az hogy a számomra helyes avi fájlneveket alkalmazzam az mkv fájlokra is.
A panel: 1x01 - Blabla.avi
B panel: 1x01 - Blabla.mkv
Hogy lehetne ezt megoldani?
- 253 megtekintés
Hozzászólások
sed
a Blabal.S01E01.WEBRIP.x264.HUN-nubira.mkv -ból kiszeded a pont előtti részt, kiszeded az S01E01 -ből a két numerikus részt, érzés szerint leszeded a vezető nullát, majd eldobod az utolsó pont előtti részt, aztán a kiszedett részeket más sorrendben fűzöd össze, egy pluszban berakott x karakterrel, így lesz: Blabla.1x01.mkv
A pontos sed -del eljátszhatsz, vagy chatGPT megoldja.
- A hozzászóláshoz be kell jelentkezni
Nekem a vim-renamer a kedvencem ilyenekre (de a vimv is biztosan jó).
- A hozzászóláshoz be kell jelentkezni
Csoportos átnevezésekre minta alapján az mmv parancsot szoktam használni.
- A hozzászóláshoz be kell jelentkezni
Nagyon parasztos megoldás, 10 perc alatt:
sed -E 's/(.*)\.S([[:digit:]]+)E([[:digit:]]+).*$/\2x\3 - \1\.mkv/'
fisher@s0:~$ echo Blabal.S01E01.WEBRIP.x264.HUN-nubira.mkv | sed -E 's/(.*)\.S([[:digit:]]+)E([[:digit:]]+).*$/\2x\3 - \1\.mkv/'
01x01 - Blabal.mkv
- A hozzászóláshoz be kell jelentkezni
https://packages.debian.org/trixie/rename
ha nem Debian/Ubuntu, akkor pedig https://metacpan.org/dist/File-Rename
- A hozzászóláshoz be kell jelentkezni
Köszi Fisher
a fáradozásodat, de azt hiszem mindannyian félreértitek a dolgot.
Akkor részletesen.
A panel:
01 - Kár a gőzért.avi
02 - Első nap a suliban.avi
03 - Inkább a halál.avi
04 - Csak ne olyan hevesen!.avi
05 - Búcsú Marcipántól.avi
06 - Kettős születésnap.avi
07 - Anyunak egy szót se!.avi
08 - Szerelem, hó, háború.avi
09 - Rory bálja.avi
10 - Bűnbocsánat bonyodalmakkal.avi
11 - A szakítás.avi
12 - Dupla randevú.avi
13 - A félbe hagyott koncert.avi
14 - Átkozott Donna Reed.avi
15 - Cristopher visszatér.avi
16 - Szerelem a csillagok alatt.avi
17 - A szakítás után.avi
18 - A harmadik Lorerai.avi
19 - Emily csodaországban.avi
20 - Utóirat: szeretlek.avi
21 - Dalnokok és százszorszépek.avi
B panel:
Szivek.szallodaja.S01E01.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E02.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E03.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E04.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E05.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E06.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E07.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E08.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E09.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E10.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E11.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E12.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E13.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E14.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E15.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E16.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E17.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E18.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E19.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E20.WEBRIP.x264.HUN-nubira.mkv
Szivek.szallodaja.S01E21.WEBRIP.x264.HUN-nubira.mkv
Az összes mkv fájlt szeretném átnevezni az avi fájlok neveire.
Tehát nem csak egy fájl, hanem többet, és semmi nem egyezik. Úgy gondolom, hogy be kellene listáznom egy adatbázisba az avi fájlok
neveit, majd onnan kinyerve felhasználni. De hogy biztosítom azt hogy mindegyik név passzoljon.
Ez a fájlnév kell kiterjesztés nélkül.
18 - A harmadik Lorerai.avi
Ezt kell átnevezni
Szivek.szallodaja.S01E18.WEBRIP.x264.HUN-nubira.mkv
Erre:
18 - A harmadik Lorerai.mkv
Egy azonosítót tudok használni, nevezetesen a 18-as számot, mivel az mind a kettőben benne van.
Ötletek:
ls | rev | cut -c 4- | rev > /tmp/minta.txt
Így megkapom kiterjesztés nélkül a helyes névlistát. Ezt betenném egy adatbázisba melyet aztán for ciklussal kitudok olvasni.
Az avi fájlokból egyszerűbben kitudom szűrni a számokat, és azt kell összevessem az mkv fájlokban lévő számokkal.
Itt gondolom sed lenne a jó. Ha van egyezés akkor... Na és hogyan tovább?
- A hozzászóláshoz be kell jelentkezni
#!/bin/bash
pa='/path/to/A'
pb='/path/to/B'
cd "$pb"
ls -1 "$pa" | while read fa
do
read ep _ title <<< "`basename "$fa" .avi`"
fb="`basename *E${ep}\.*`"
echo mv "$fb" "$ep - $title.mkv"
done
./atnev
mv Szivek.szallodaja.S01E01.WEBRIP.x264.HUN-nubira.mkv 01 - Kár a gőzért.mkv
mv Szivek.szallodaja.S01E20.WEBRIP.x264.HUN-nubira.mkv 20 - Utóirat: szeretlek.mkv
- A hozzászóláshoz be kell jelentkezni