У меня есть похожая запись о транслитерации содержимого файла. Здесь же будут транслитерированы только имена файлов.
Если активно пользуешься терминалом, часто возникает желание убрать пробелы из имен файлов и иногда даже кириллицу.
Итак, перед нами стоит задача группового переименования файлов. Например, нужно поменять имена всех файлов в директории. Хотим избавиться от пробелов — заменить их на нижние подчеркивания. Все кириллические буквы хотим поменять на латинские (на «транслит»).
Вот скрипт, написанный на питоне, который совершает такое массовое переименование файлов. Надо создать файл renamer.py с приведенным ниже содержанием, положить его в папку с переименовываемыми файлами и выполнить:
user $ | python3 renamer.py -p |
И в выводе программы будет показано, как будут переименованы файлы, но
изменений не произойдет. Если Вы окажетесь довольны результатами, сделайте на
всякий случай резервную копию директории и выполните python3 renamer.py
. За
ключик -p спасибо комментарию от hombit’a.
Файл Русский Текст.TXT
переименуется в russkiy_tekst.txt
. Поведение скрипта
благодаря его простоте очень легко подстроить под свои нужды, даже совсем не
разбираясь в питоне. В строках с 13 по 82 в левом столбце в кавычках стоит то,
что подлежит замене; в правом столбце — то, на что нужно заменять. Добавляйте
свои замены и корректируйте существующие по своему усмотрению.
1 | import os |
P.S. Функцию для замены ключа словаря на его значение подсмотрел тут.