В Debian, Ubuntu и производных, если вы введете man rename
в командной строке, вы получите страницу руководства для утилиты переименования, которая позволяет использовать произвольные Perl-подобные команды регулярного выражения для переименования.
Например, это сократит (усечив) все файлы в текущем каталоге до длины пять:
rename 's/^(.{5}).*/$1/' *
Он работает, захватывая первые пять символов, а затем используя их в подстановке, удаляя остальные.
Другой пример - сократить имена файлов (без расширения) до пяти символов, сохранив расширение:
rename 's/^(.{5}).*(\..*)$/$1$2/' *
Он захватывает две группы: первая - первые пять символов, вторая - расширение. Это превратится myCarefullyCraftedDocument.pdf
в myCar.pdf
.
Предупреждение. Используйте это осторожно, желательно с копией своего каталога или сначала создав резервные копии. Вы были предупреждены!! Как минимум, используйте rename -n
сначала, что покажет вам, что будет сделано, на самом деле не делая этого.