Я ищу способ очистить мое соглашение об именах в моей медиа-папке.
Например, переименуйте
The Thing (1982)
|_ The Thing (1982).mkv
в:
Thing, The (1982)
|_ Thing, The (1982).mkv
Я нашел много сообщений и сценариев для переименования, основанных на шаблонах или именах папок, но не что-то основное и конкретные.
По сути, Plex сортирует фильмы «The» и показывает их правильно, но Emby сортирует шоу и фильмы по формату имен файлов / папок. Поэтому я хотел бы исправить свое соглашение об именах.
Кто-нибудь может помочь с этим?
Проверить FileBot в https://www.filebot.net/forums/viewtopic.php? f=7&t=3709&p=32848#p32848 или https://www.filebot.net/или хранилище программного обеспечения Ubuntu. Это обеспечивает, хороший способ увеличить объем переименовывают видеофайлы.
Всего один способ приблизиться к проблеме с Perl rename
:
rename -n 's/The ([^(]*) /$1, The /'
Это сохраняет имя без продвижения как группа 1 и заменяет эту часть имени с группой 1, сопровождаемой “,”. Поскольку Вы хотите переименовать каталоги, а также файлы в них, необходимо сделать переименование на двух шагах, каталоги сначала и файлы после них. С -n
опция, rename
просто печатает названия файлов, которые будут переименованы, на самом деле не работая – это является большим для тестирования.
$ tree -A --noreport
.
└── The\ Thing\ (1982)
└── The\ Thing\ (1982).mkv
$ rename -n 's/The ([^(]*) /$1, The /' */ # */ matches every directory
rename(The Thing (1982)/, Thing, The (1982)/) # old and new name appear in the brackets, separated by comma
$ rename 's/The ([^(]*) /$1, The /' */ # let's go!
$ tree -A --noreport # dirs are done, now to the files!
.
└── Thing,\ The\ (1982)
└── The\ Thing\ (1982).mkv
$ rename -n 's/The ([^(]*) /$1, The /' */* # */* matches every file in a subdirectory
rename(Thing, The (1982)/The Thing (1982).mkv, Thing, The (1982)/Thing, The (1982).mkv)
$ rename 's/The ([^(]*) /$1, The /' */*
$ tree -A --noreport
.
└── Thing,\ The\ (1982)
└── Thing,\ The\ (1982).mkv
Можно, конечно, не учесть -n
шаг, но лучший сейф, чем извините.