|
@@ -813,3 +813,49 @@ librerie per la manipolazione di file, date e altre operazioni comuni,
|
|
|
mentre Bash è un linguaggio di scripting più semplice, utilizzato
|
|
|
principalmente per la gestione dei file e l'esecuzione di comandi del
|
|
|
sistema in un ambiente Unix/Linux.
|
|
|
+
|
|
|
+**Io**: Produci una versione di `backup.py` che utilizzi gli argomenti
|
|
|
+da linea di comando.
|
|
|
+
|
|
|
+**llm**:
|
|
|
+
|
|
|
+
|
|
|
+```python
|
|
|
+import os
|
|
|
+import datetime
|
|
|
+import sys
|
|
|
+
|
|
|
+def backup_file(file_path, backup_dir):
|
|
|
+ """
|
|
|
+ Esegue il backup di un file specificato e lo salva in una directory di backup.
|
|
|
+
|
|
|
+ Parametri:
|
|
|
+ file_path (str): Percorso del file da eseguire il backup.
|
|
|
+ backup_dir (str): Percorso della directory dove salvare il backup.
|
|
|
+
|
|
|
+ Ritorna:
|
|
|
+ None
|
|
|
+ """
|
|
|
+ # Controlla se la directory di backup esiste
|
|
|
+ if not os.path.exists(backup_dir):
|
|
|
+ os.makedirs(backup_dir)
|
|
|
+
|
|
|
+ # Costruisce il percorso del file di backup
|
|
|
+ backup_file_path = os.path.join(backup_dir, os.path.basename(file_path))
|
|
|
+
|
|
|
+ # Esegue il backup del file
|
|
|
+ os.system(f"cp {file_path} {backup_file_path}")
|
|
|
+
|
|
|
+ # Stampa informazioni sul backup
|
|
|
+ print(f"Backup eseguito il {datetime.datetime.now()} per il file {file_path}")
|
|
|
+ print(f"File di backup salvato in: {backup_file_path}")
|
|
|
+
|
|
|
+if __name__ == "__main__":
|
|
|
+ if len(sys.argv) != 3:
|
|
|
+ print("Uso: python script_name.py <percorso_file> <percorso_backup>")
|
|
|
+ sys.exit(1)
|
|
|
+
|
|
|
+ file_to_backup = sys.argv[1]
|
|
|
+ backup_directory = sys.argv[2]
|
|
|
+ backup_file(file_to_backup, backup_directory)
|
|
|
+```
|