Сzsh
:
autoload zmv # best in ~/.zshrc
zmv -n '(*[^0-9])(<1->)(*.wav)(#qn)' '$1$(($2-1))$3'
(удалите -n
, если все устраивает)
(#qn)
предназначен для численной сортировки списка, чтобы A-B-C#9-D.wav
переименовывался, например, в перед A-B-C#10-D.wav
.
Однако, если бы были и A-B-C#9-D.wav
, и A-B-C#10-D.wav
, то zmv
отметил бы тот факт, что один файл будет переименован в имя существующего файла, и прервал бы выполнение команды. Вам нужно будет добавить опцию -f
, чтобы по-прежнему использовать ее принудительно.
Или с zsh (для числового порядка глобуса )и perl
переименовать:
rename -n 's/\d+/$&-1/e'./*[1-9]*.wav(#qn)
(то же предостережение и та же опция -f
с некоторыми вариантамиrename
).