
.mkvファイルのバッチの名前を元の形式からデフォルトのPLEX形式に変更しようとしています。 sed、名前変更、mvに苦労しています。これが私が経験している構文エラーにすぎず、簡単に修正できることを願っています。
BandOfBrothers.S01E01.Currahee.mkv の名前を 'Band of Brothers(2001) - s01e01 - Currahee.mkv' に変更します。
sed 's/BandOfBrothers.*.*.mkv/"Band of Brothers.*.*.mkv"/'
rename -v 's/BandOfBrothers.*.*.mkv//' ./Band\ of\ Brothers.*.*.mkv/
残りは苦労してタイトル名を変更するのに苦労しています。一度動作させることができれば、ループに入れて必要に応じて調整します。
助けやアドバイスをいただきありがとうございます。
答え1
sed
名前ではなく入力またはファイルの内容を変更します。他の技術と組み合わせてファイル名を変更するために使用できますが、操作にはより良いツールがあります。
rename
その一つのようです。しかし、2つのことがあるので注意してください。名前変更について。 sedと非常に似ているようですが、違いのあるAccept Perl置換を使用しているようです。
ファイル名の末尾にスラッシュを追加してディレクトリにします。そのため、./Band\ of\ Brothers.*.*.mkv/
ファイル名が一致しません。ファイル名はディレクトリではありません。
また、正規表現(代替の最初の部分)では*
ワイルドカードとは異なります。これは、以前の操作が0回以上繰り返されることを意味します。.*
Perl正規表現で使用される意味は次のとおりです。ゼロ個以上の改行文字を除くすべて。それはあなたが望むものではありません。
2つの代替方法を使用してプロセスを簡素化できます。最初はスペースを挿入し、大文字と小文字を変更し、2番目はシーズンとエピソード形式を変更します。
rename -v 's/BandOfBrothers/Band of Brothers (2001)/;
s/\.(S[0-9]+E[0-9]+)\./ - \L$1 - /
' BandOfBrothers*.mkv
\L
方法ここにあるすべての内容は小文字です。。