Переименовать файлы, Python / Jython
Вопрос
У меня есть каталог, полный файлов, в некоторых из которых есть амперсанд в именах. Я хотел бы переименовать все файлы с амперсандами и заменить каждый амперсанд на плюс (+). Я работаю с около 10 тыс. Файлов. Какой лучший способ сделать это?
Решение
import glob, os
for filename in glob.glob(os.path.join(yourPath, "*&*")):
os.rename(filename, filename.replace('&','+'))
Другие советы
Если у вас есть подкаталоги:
import os
for dirpath, dirs, files in os.walk(your_path):
for filename in files:
if '&' in filename:
os.rename(
os.path.join(dirpath, filename),
os.path.join(dirpath, filename.replace('&', '+'))
)
import os
directory = '.'
for file in os.listdir(directory):
if '&' in file :
os.rename(file, file.replace('&', '+'))
Замените directory
своим собственным путем.
используя переименование :
$ rename --find '&' --replace '+' *
Не связан с StackOverflow