Ho una directory piena di file, alcuni con una e commerciale nel loro nome. Vorrei rinominare tutti i file con la e commerciale e sostituire ogni ampersand con un plus (+). Sto lavorando con circa 10k file. Quale sarebbe il miglior metodo per farlo?Rinomina file, Python/Jython
risposta
import glob, os
for filename in glob.glob(os.path.join(yourPath, "*&*")):
os.rename(filename, filename.replace('&','+'))
iglob sarebbe più adatto qui – SilentGhost
Ci siamo presi la libertà di cambiare la concatenazione di stringhe in una chiamata os.path.join(), per chiarezza e portabilità. – unwind
@SilentGhost - buon punto, aggiornato. @unwind - true, suppongo di essere in UNIX-centric. – vartec
import os
directory = '.'
for file in os.listdir(directory):
if '&' in file :
os.rename(file, file.replace('&', '+'))
Sostituire directory
con il proprio percorso.
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('&', '+'))
)
Qual è il punto nella comprensione delle liste in questo caso? Un ciclo semplice sarebbe sufficiente. – jfs
Deve esserci un punto? Potrei anche usare un loop qui, ma la sintassi se in seguito sembra un po 'più bella, non credi? –
L'elenco di 10K senza un motivo è il punto. Tale formattazione potrebbe portare a bug, ad esempio, vedere la virgola vicino a '' + ')), '. – jfs
utilizzando rename:
$ rename --find '&' --replace '+' *
- 1. Rinomina file in Cocoa?
- 2. Rinomina file in IsolatedStorage
- 3. Symfony VichUploaderBundle rinomina file
- 4. Rinomina file in DocumentDirectory
- 5. Rinomina un file Typescript
- 6. Hadoop in rinomina file
- 7. rinomina parte del nome file
- 8. Scarica risorse esterne - Rinomina file
- 9. Copia e rinomina file VBScript
- 10. Rinomina un file in C#
- 11. Trova file, rinomina in posto unix bash
- 12. Trova e rinomina i file senza estensione?
- 13. Rinomina nome file di base in Qt
- 14. Gulp - copia e rinomina un file
- 15. SVN Rinomina directory, conserva cronologia file
- 16. Rinomina file in md5 sum + extension (BASH)
- 17. Inno Setup Rinomina file durante l'imballaggio
- 18. Rinomina file outfile con data in mysql
- 19. Rinomina un file nella memoria interna
- 20. Rinomina filePer non funziona
- 21. Rinomina l'output di CPack
- 22. rinomina apk in gradle
- 23. Subversion, rinomina, Wha?
- 24. Rinomina controllo in XAML
- 25. git rinomina/cancella confusione
- 26. Rinomina ramo remoto
- 27. Laravel 5.1 rinomina progetto
- 28. Skydrive rinomina cartella
- 29. XCode 4.2 Rinomina target
- 30. Emacs Rinomina variabile
Si tratta di una directory piatta di 10K file, o un albero di directory con le sottodirectory? –