大規模フォルダ名の変更 - Calibre

大規模フォルダ名の変更 - Calibre

Calibreは私のライブラリにアクセスすることを許可し、各フォルダの後に(123)を追加してすべてのフォルダ名を変更することにしました。 (123を任意の数字に置き換えてください。)

フォルダ名からすべての「(???)」文字列を削除するためにLinux(Debian)端末で使用されるコマンドは何ですか?

答え1

このrenameツール(renameDebianパッケージにあります)を使用すると、Perl正規表現を使用してファイルの名前を変更できます。

フォルダにディレクトリのみがあると仮定すると、次のものを使用できますrename

rename 's/ \(\d\d\d\)$//' *

ファイルとディレクトリがあり、ディレクトリの名前を変更したい場合は、次のことができます。

find . -mindepth 1 -depth -type d -exec rename 's/ \(\d\d\d\)$//' "{}" \;

答え2

後で参照できるように...

Calibre が台無しにしたライブラリのフォルダを変更するには、次のコマンドを使用できます。

親フォルダにCD

find . -type d -execdir bash -c 'dest=${1//[0-9_()]/}; [[ -d $dest ]] || mv -- "$1" "$dest"' _ {} \;

「mv」を「echo」に置き換えて、最初にテストしてみることをお勧めします。

関連情報