2016-03-08 1 views
0

J'ai écrit un script pour extraire des images d'une base de données que j'ai stocké sur le bureau de mon ordinateur. J'ai écrit le code sur un autre ordinateur (nouveau macbook pro 2016) car le disque dur de mon ordinateur est mort. J'ai finalement pu restaurer mon ordinateur (et donc renvoyé le nouvel ordinateur sur lequel j'ai écrit le code).OSError: [Errno 2] Aucun tel fichier ou répertoire - code travaillé sur le nouvel ordinateur ne fonctionne pas sur l'ancien

Je suis en train d'exécuter le même script, complètement inchangé et je continue à obtenir cette erreur: (La ligne btwn ** ATTENTION ** est la ligne de commande imprimé.)

--------------------------**********ATTENTION**********------------------------- 
ffmpeg -i /Desktop/UCF101/v_BaseballPitch_g01_c01.avi -ss 00:00:00.0 -vframes 1 BPout0.png 
--------------------------**********ATTENTION**********------------------------- 
Traceback (most recent call last): 
    File "./Desktop/processing.py", line 50, in <module> 
    processvideo('/Desktop/UCF101/v_BaseballPitch_g01_c01.avi') 
    File "./Desktop/processing.py", line 47, in processvideo 
    sp.check_output(args) #was cmdline 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 568, in check_output 
    process = Popen(stdout=PIPE, *popenargs, **kwargs) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 711, in __init__ 
    errread, errwrite) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1308, in _execute_child 
    raise child_exception 
OSError: [Errno 2] No such file or directory 

Tout est dans le même placer comme il était sur le nouvel ordinateur où il était capable de fonctionner avec succès. Est-ce que quelqu'un a une idée de ce que cela pourrait être? Est-ce que ma version de python pourrait avoir quelque chose à voir avec ça? Serait-ce un problème plus important sur mon ordinateur? Des conseils pour déboguer ce qui a causé cette erreur? J'ai déjà imprimé la commande (correspond parfaitement), utilisé shlex.split ("mycommandline"), vérifié mon répertoire courant dans le script ...

Répondre

1

Je ne suis pas sûr d'interpréter correctement la question, mais Je pense que vous passez un chemin vers un script d'une certaine façon (peut-être codé en dur, peut-être en tant que paramètre de ligne de commande, peut-être dans un fichier de configuration), et ce chemin arrive à la ligne ATTENTION. Dans la ligne ATTENTION, le chemin ne doit-il pas être ~/Desktop/path/to/file au lieu de /Desktop/path/to/file? Si c'est le cas, cela expliquerait pourquoi votre application ne trouve pas le fichier.