[gen@m4p ori]$ ls
1 2 3 nomi_fin py.py
[gen@m4p ori]$ python py.py
Renaming 1 -> a
Renaming 2 -> b
Renaming 3 -> c
[gen@m4p ori]$ cat py.py
import os
newNames = [x for x in open('nomi_fin', 'r').read().split('\n') if x != '']
curNames = [int(x) for x in os.listdir('./') if x not in ['', 'py.py', 'nomi_fin']]
curNames.sort()
if len(newNames) != len(curNames):
print('Length mismatch, something is wrong, ABORT ABORT ABORT')
for i in curNames:
print('Renaming {} -> {}'.format(i, newNames[i - 1]))
os.rename(str(i), newNames[i - 1])
[gen@m4p ori]$ cat nomi_fin
a
b
c
La struttura della cartella dev'essere ESATTAMENTE come questa, cioè:
1. ogni numero dev'essere consecutivo. Se non è così, lo script va cambiato (semplice ma mi scocciava, in caso lo cambio)
2. I file devono iniziare da 1 e non da 0. Se non è così, lo script va cambiato
3. il file python si deve chiamare py.py e deve stare nella cartella con i file da rinominare, la lista si deve chiamare nomi_fin e deve stare nella stessa cartella.