у вас есть rename на debian? idk, но поскольку он доступен на ubuntu, я предполагаю, что это так.
NAME rename - переименовывает несколько файлов. SYNOPSIS rename [-v] [-n] [-f] perlexpr [files] ОПИСАНИЕ «rename» переименовывает имена файлов, предоставленные в соответствии с правилом, указанным в качестве первого аргумента. Аргумент perlexpr - это выражение Perl, которое, как ожидается, изменит строку $ _ в Perl, по крайней мере, для некоторых указанных имен файлов. Если данное имя не изменено выражением, оно не будет переименовано. Если в командной строке не указаны имена файлов, имена файлов будут считываться через стандартный ввод. For example, to rename all files matching "*.bak" to strip the
extension, you might say
rename 's/\.bak$//' *.bak
To translate uppercase names to lower, you'd use
rename 'y/A-Z/a-z/' *
пример, скопированный из результата google, может быть уже совсем рядом с тем, что вы хотите:
NAME rename - переименовывает несколько файлов
rename -n 's / .htm $ / .html /' * .htmСИНТАКСИС rename [-v] [-n] [-f] perlexpr [files]
Если результат вышеуказанного тестового прогона выглядел нормально, тогда вы можете запустить окончательную версию:ОПИСАНИЕ «rename» переименовывает имена файлов, предоставленные в соответствии с правилом, указанным в качестве первого аргумента. Аргумент perlexpr - это выражение Perl, которое, как ожидается, изменит строку $ _ в Perl, по крайней мере, для некоторых указанных имен файлов. Если данное имя не изменено выражением, оно не будет переименовано. Если в командной строке не указаны имена файлов, имена файлов будут считываться с помощью стандартного ввода.
. -v является необязательным, но рекомендуется включить его, потому что это единственная запись, которую вы будете иметь внесенные изменения командой rename ....