MMVバッチファイルの名前変更

MMVバッチファイルの名前変更

mmvモードが不明です。次のパターンを持つ多くのビデオファイルがあります。

my.program.name.season.NN.episode.NN.-.title.avi

次の場所に移動する必要があります。

my.program.name.sNNeNN.title.avi

パターンがうまくいかないようです。

ベストアンサー1

長い話を短く

rename -n 's/^((\w+\.+){3})(.).*\.(.*)\.(.).*\.(.*)\.\-(\..*)$/$1$3$4$5$6$7/' *
  • \w+1つ以上の単語文字と一致します(例:[a-zA-Z0-9_]+[1])。
  • \.+1つ以上のドット(.)文字と一致します。 [2]

    ノート文字を\.一致させます.。正規表現\.で特別な意味を持つには、asを使用する必要があります。これをエスケープコードといい、次の文字の元のリテラルセマンティクスを復元します。..\

  • (\w+\.+){3}^ファイル名の先頭から始まる上記の[1]、[2]文字グループのうち最大3倍まで一致します(名前の先頭と一致)。
    一致または返されます。my.program.name.

    ノート正規表現の周りの追加の括弧は、グループ化を一致させるために使用されます。グループマッチングは、次から始めて(終了し、)いわゆる提供に使用されます。逆参照。逆参照には、特殊変数に格納されている一致する部分文字列が含まれます。12ドル$9ここで、$1 には、最初の括弧のペアと一致する部分文字列が含まれます。

  • .メタ文字ドット(.)は、すべての単一文字と一致します。たとえば、...任意の3文字を一致させます。したがって、最初の文字を一致させます(.)seasons

  • .*\..最初の文字が表示されるまで、上記の単一文字の後のすべての項目と一致します。ご覧のとおり、一致する名前から削除したいので、一致グループとしてキャプチャしませんでしたeason.

  • (.*)上記の一致以降のすべての項目と一致します。これはNNファイル名に保持したいので、ここでは括弧を使用します。

  • \.上記試合後のポイントと一致します。まず来るのは.後で来るNN

  • (.)今回も、上記の一致から最初の単一文字を一致させます。これは返されますe

  • .*\.上記の一致から最初の一致まですべての項目を一致させます.。一致しますpisode.

  • (.*)上記の一致の最後の一致点以降のすべての項目と一致します。これは2番目のものと一致しますNN

  • \.\-ドット.の後にダッシュが来るのと一致します-。一致または返されます.-

  • 最後に、ドット(\..*)$.その後のすべてのエントリをファイル名の最後まで一致させます。$ファイル名または入力文字列の末尾と一致します。

注:-n実際の名前を変更するには、オプションを削除してください。

おすすめ記事