Bonjour,
J'ai écrit une boucle récursive pour récupérer les informations Unix d'éléments des répertoires à l'aide du module subprocess.check_output(). Ce qui me permet de récupérer les lignes à traiter.
La commande qui me pose un problème est : subprocess.check_output(["ls", lsOption, rep]).decode("Utf-8" ).split('\n')).
Ça fonctionne très bien en ligne de commande. Mais quand le script est lancé de manière automatique par le biais de launchd, j'obtient :
subprocess.CalledProcessError: Command '['ls', '-TaeblO@', '/RépertoireAvecDesAccents/']' returned non-zero exit status 1
Je précise que quand les répertoires n'ont pas d'accent, ça fonctionne. Je pensais à une erreur de codage, mais après de multiple tests (macroman, Utf-8, ascii…), j'ai toujours cette erreur avec un lancement automatique...
Y compris en faisant rep.encode("macroman") par exemple.
Une solution, explication, un lien d'information...
Python version : 3.2 (r32:88452, Feb 20 2011, 10:19:59)
[GCC 4.0.1 (Apple Inc. build 5493)]
supports_unicode_filenames = True