[Python] Errore subprocess

Massimo Capanni massimo.capanni a gmail.com
Gio 6 Nov 2014 12:47:10 CET


Buongiorno a tutti,

sto utilizzando il modulo subprocess per eseguire un backup di una cartella
con il comando Windows robocopy e, apparentemente, tutto funziona bene.
Siccome ignoro molte cose di questo linguaggio, ho cominciato ad andare
oltre e mi sono guardato altre sfumature della libreria subprocess e ho
scoperto che la check_call restituisce codici di errore.
Così ho provato a sostituire la subprocess.call con l'istruzione riportata
nel seguente frammento di codice:

(in Python 3.4.2 e Windows 7 pro)

try:
    subprocess.check_call(['robocopy', directory_sorgente,
directory_destinazione, "/MIR"],  shell=True)
except subprocess.CalledProcessError:
    print (" - ", sys.exc_info()[0])
    print (" - ", sys.exc_info()[1])
    print (" - ", sys.exc_info()[2])

L'errore restituito è questo:

 -  <class 'subprocess.CalledProcessError'>
 -  Command '['robocopy', 'C:\\dati', 'D:\\test', '/MIR']' returned
non-zero exit status 1
 -  <traceback object at 0x01D278A0>

e non capisco perché non gli sta bene.
Cosa strana se tolgo ilparametro "/MIR", lo script non da nessun errore.

Cosa sto sbagliando secondo voi? ...

.m

.Massimo .Capanni

σπευδε βραδεως
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20141106/cc361bc5/attachment.html>


Maggiori informazioni sulla lista Python