Kirjoittaja Aihe: Python - toisen ohjelman tai moduulin käyttäminen *ratkaistu*  (Luettu 2755 kertaa)

Regel

  • Käyttäjä
  • Viestejä: 1090
  • Lucid
    • Profiili
Elikkäs minulla on ollut jonkin aikaa harjoituksena python-ohjelma, joka ottaisi varmuuskopion kansiosta/kansioista, ja pakkaisi ne zipillä.
Nyt alan olla pikkuhiljaa valmis tämän harjoituksen kanssa, paitsi:

Ohjelma suoritetaan backup.py -tiedostolla. Kyseinen tiedosto lukee komennon perässä mahdollisesti olevat --help yms. ja tekee niiden mukaan, tai sitten lataa (import backup_main) varsinaisen ohjelman, backup_main.py. Valitettavasti backup_main.py täytyy olla samassa kansiossa kuin backup.py, jotta sen voi ladata.

Kuinka voin joko ladata ohjelman/moduulin toisesta kansiosta, tai kuinka voin tehdä /usr/bin hakemistosta linkin tai jotain /opt/backup/backup.py -tiedostoon, joka sitten alkaisi suoriutua - samalla pitäisi myös mahdolliset --help yms. valitsimet huomioida.

Edit: Tuossa vielä tiedostot liitteeksi, jos joku haluaa katsoa, kommentoida tai ottaa mallia yms.

[ylläpito on poistanut liitteen]
« Viimeksi muokattu: 08.04.07 - klo:10.39 kirjoittanut Regel »

Fa1r

  • Käyttäjä
  • Viestejä: 221
  • Reply #1!
    • Profiili
Vs: Python - toisen ohjelman tai moduulin käyttäminen
« Vastaus #1 : 07.04.07 - klo:21.05 »
... Kuinka voin joko ladata ohjelman/moduulin toisesta kansiosta, ...
Paha mennä sanomaan. Oletkos yrittänyt ns. relatiivista viittausta..
import ../juuremman-kansion-moduuli
Tai absoluuttista viittausta:
import /opt/backup/backup
Jos eivät ^ toimi, johtunee ehkä siitä ettei niiden pitäisikään :)

Vilkaises myös tämä The Module Search Path

..., tai kuinka voin tehdä /usr/bin hakemistosta linkin tai jotain /opt/backup/backup.py -tiedostoon, joka sitten alkaisi suoriutua - samalla pitäisi myös mahdolliset --help yms. valitsimet huomioida.
luulisin, että ´esikuvallinen linkki´ toimisi tässä tapauksessa.
sudo ln -s /opt/backup/backup.py /usr/bin/backup

.'
What you don't know can hurt you, only you won't know it.
--$(fortune)
Elastisen Linux-biisi

Regel

  • Käyttäjä
  • Viestejä: 1090
  • Lucid
    • Profiili
Vs: Python - toisen ohjelman tai moduulin käyttäminen
« Vastaus #2 : 08.04.07 - klo:10.39 »
Haa  ;) Kiitos, tuo linkitys auttoi. Vaikuttaisi toimivan juuri halutulla tavalla. kiitos
Edit : Kokeilin jo tuollaisia viittauksia
import /opt/backup/backup, mutteivat ainakaan näin aluksi suostuneet toimimaan. Pitänee kokeilla vielä jonkun kerran.