Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/04/2014, à 18:36

Hizoka

[resolu] [python3] Savoir ou se trouve le fichier du programme

Bonsoir,

je suis confronté à un soucis :
Pour savoir où se trouve le logiciel, j'utilise la commande :

os.path.abspath(os.path.dirname(sys.argv[0]))

Celle-ci fonctionne trés bien sauf dans un cas spécial.

Sachant que mon logiciel peut être portable ou dans un ppa, celui-ci peut se trouver à divers endroits.

Pour la version packagé pour le ppa, j'utilise simplement un lien (ln -s) depuis /usr/bin pointant vers le logiciel se trouvant dans /usr/sharemon_appli.

Or si je lance le logiciel depuis la commande, il me dit qu'il se trouve dans /usr/bin.

Alors bien evidemment, il est possible de faire un bete if :

if os.path.exists(os.path.abspath(sys.argv[0])):
  dir = os.path.abspath(os.path.dirname(sys.argv[0]))
elif os.path.exists("/usr/sharemon_appli/fichier_python"):
  dir = "/usr/sharemon_appli"

Mais ma question est plus théorique, comment peut-on contourner le problème de détection du dossier ?
Comment faire pour ne pas que l'emplacement renvoyé soit /usr/bin mais bien l'emplacement du logiciel ?

Merki wink

Dernière modification par Hizoka (Le 13/04/2014, à 17:58)


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#2 Le 10/04/2014, à 11:30

Gaara

Re : [resolu] [python3] Savoir ou se trouve le fichier du programme

Salut,
Je pense que tu auras plus de chances d'obtenir une réponse en posant ta question (en anglais) sur StackOverflow !


Kubuntu 18.04 x64
Un terminal tactile Raspberry Pi et Odroid

                                        <code>zenity  --question --title "Alert"  --text "Microsoft Windows has been found! Would you like to remove it?"</code>

Hors ligne

#3 Le 10/04/2014, à 15:52

nesthib

Re : [resolu] [python3] Savoir ou se trouve le fichier du programme

Essaie :

path = os.path.abspath(os.path.realpath(sys.argv[0]))

GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#4 Le 13/04/2014, à 17:58

Hizoka

Re : [resolu] [python3] Savoir ou se trouve le fichier du programme

toujours aussi fort !

Oui ca fontionne quelque soit la facon d'executer le logiciel.


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne