In Python, esistono diverse librerie che possono essere utilizzate per copiare ricorsivamente una directory, ma una delle più comuni è shutil
.
Per utilizzare questa libreria, è necessario importarla all'interno del file Python e utilizzare la funzione copytree()
. Questa funzione accetta due parametri: il percorso della directory da copiare e il percorso di destinazione in cui verrà creata la copia.
Ad esempio, se si vuole copiare la directory project dalla cartella corrente alla cartella backup, il codice sarebbe il seguente:
import shutil
shutil.copytree('project', 'backup/project')
Questo codice copierà la directory project all'interno della cartella backup, creando una nuova directory chiamata project.
È importante notare che, se la directory di destinazione esiste già, la funzione copytree()
solleverà un'eccezione FileExistsError
. Per evitare questo errore, è possibile utilizzare la funzione rmtree()
della stessa libreria shutil
per rimuovere la directory di destinazione prima di copiare la directory originale:
import shutil
import os
target_dir = 'backup/project'
if os.path.exists(target_dir):
shutil.rmtree(target_dir)
shutil.copytree('project', target_dir)
Questo codice rimuoverà la directory di destinazione se esiste già, e quindi copierà la directory originale nella cartella di destinazione.