Rinomina file, Python / Jython
Domanda
Ho una directory piena di file, alcuni dei quali hanno una e commerciale nei loro nomi. Vorrei rinominare tutti i file con e commerciali e sostituire ogni e commerciale con un segno più (+). Sto lavorando con circa 10k file. Quale sarebbe il metodo migliore per farlo?
Soluzione
import glob, os
for filename in glob.glob(os.path.join(yourPath, "*&*")):
os.rename(filename, filename.replace('&','+'))
Altri suggerimenti
Se si dispone di sottodirectory:
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('&', '+'))
Sostituisci directory
con il tuo percorso.
utilizzando rinomina :
$ rename --find '&' --replace '+' *
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow