Команда rename служит для массового переименования файлов, также есть возможность заменить определенные части в названии файла или же символов используя Perl регулярные выражения.
Примеры
rename 's/.h/.hpp/' *.h изменить расширение всех файлов с расширением .h на расширение .hpp
rename -f 's/.html/.php/' *.html тоже самое что и в предыдущем примере но с перезаписыванием файлов
rename -n 's/.html/.php/' *.html выводит список файлов(опция -n) которые будут переименованы, согласно регулярному выражению
rename 'y/A-Z/a-z/' * изменить регистр всех файлов с верхнего на нижний
rename 'y/a-z/A-Z/' * изменить регистр всех файлов с нижнего на верхний
rename 's/\.sh$//' *.sh удалить расширение .sh
find -type f -name '*.jpg' | rename 's/june/august/' найти все файлы с расширением .jpg и заменить слово june на august
rename 's/sl_//' *.c убрать из имени всех файлов sl_*.c 3 буковки sl_
rename 's/(stri|stra)ng/bang/' *.c найти все файлы с именами начинающимися на stri или stra и продолжающиеся на ng и заменить на bang (string.c -> bang.c, strangle.c -> bangle.c)
rename "s/ *//g" * удалить все пробелы
rename 's/\s+/_/g' * изменить пробелы на _
Комментарии
Отправить комментарий