有人可以帮我重命名工具吗?

Can someone help me with rename tool?

我必须用这个结构重命名一堆文件(这是一个系列): SSEE_SerieName_Episode.Name.With.Dots_[some_variables_qualities].mkv

SS 是像 03 这样的季号,像 08 这样的 EE 集数(前导零)。 Plex 无法识别它,因为它的名字很蹩脚......所以我想像这样重命名它: sSSeEE_SerieName_Episode.Name.With.Dots.mkv

中可以使用变量扩展

for old in [0-9][0-9][0-9][0-9]_*.mkv ; do
    new=s${old:0:2}e${old:2}
    if [[ -e $new ]] ; then
        echo "Can't rename $old to $new: file already exists." >&2
    else
        mv "$old" "$new"
    fi
done

${old:0:2}表示$old中从位置0开始的两个字符,${old:2}表示$old中从位置2开始的所有字符。

假设:

  • 您正在使用 Perl 重命名命令。
  • Episode.Name.With.Dots 子字符串不包含下划线字符。
  • 您想删除 _[some_variables_qualities] 子字符串。
  • 上面的子字符串以下划线字符开头。

那么请您尝试以下操作:

rename 's/(\d{2})(\d{2})(_SerieName_[^_]+)_.*\.mkv/se.mkv/' *.mkv

重命名:

0102_SerieName_Episode.Name.With.Dots_[some_variables_qualities].mkv

如:

s01e02_SerieName_Episode.Name.With.Dots.mkv

请根据您的真实文件名修改上述命令中的_SerieName_部分。