bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο  Το θέμα επιλύθηκε

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό lepidas » 12 Νοέμ 2013, 08:56

Είναι αυτό το αρχείο
Κώδικας: Επιλογή όλων
http://avdella.snowguide.gr/parameterlist.htm

πως μπορώ με ένα script να παίρνω τις μεταβλητές του και να κάνω μερικά If Then?
πχ θέλω να πω
Κώδικας: Επιλογή όλων

if outsideTemp=0
then do this
if outsideTemp>0
then do that
Άβαταρ μέλους
lepidas
superbTUX
superbTUX
 
Δημοσιεύσεις: 3326
Εγγραφή: 11 Μάιος 2011, 11:10
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό simosx » 12 Νοέμ 2013, 12:57

Ανάλογα με τη γλώσσα προγραμματισμού, μπορείς να γράψεις κάτι που να
1. διαβάζεις το αρχείο http://avdella.snowguide.gr/parameterlist.htm
2. να το αναλύσει (parsing) και να φτιάχνει τις μεταβλητές
3. και μετά κάνεις την επεξεργασία που χρειάζεσαι.

Είναι πιο εύκολο να γίνει σε Python, ωστόσο είναι μάλλον εφικτό και σε Shell.
Έχεις κάποια προτίμηση σε γλώσσα;
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό lepidas » 12 Νοέμ 2013, 13:23

Δεν έχω ιδέα απο Python και ούτε θέλω τώρα να ασχοληθώ με εκμάθηση,
bash scripting καταλαβαίνω κάποια πράγματα
οπότε προτιμώ το 2ο
Άβαταρ μέλους
lepidas
superbTUX
superbTUX
 
Δημοσιεύσεις: 3326
Εγγραφή: 11 Μάιος 2011, 11:10
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό simosx » 12 Νοέμ 2013, 13:56

Δες στο https://gist.github.com/simos/7429085 για παράδειγμα σε Python.

(χμμ, τώρα είδα την απάντησή σου για την Python...)
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο  Το θέμα επιλύθηκε

Δημοσίευσηαπό simosx » 12 Νοέμ 2013, 14:34

προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό lepidas » 12 Νοέμ 2013, 15:57

ναι ειναι αυτο,με τις καταλληλες παραμετροποιησεις ελπιζω να κανω καποια πραγματα.
Ευχαριστω
Άβαταρ μέλους
lepidas
superbTUX
superbTUX
 
Δημοσιεύσεις: 3326
Εγγραφή: 11 Μάιος 2011, 11:10
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό lepidas » 13 Νοέμ 2013, 14:07

simosx έγραψε:Δες στο https://gist.github.com/simos/7429085 για παράδειγμα σε Python.

(χμμ, τώρα είδα την απάντησή σου για την Python...)
το έχεις ελέγξει το script .py?
μου βγάζει αυτό
Κώδικας: Επιλογή όλων
File "parse_weather.py", line 20
proper_line = l[:-5]
^
IndentationError: expected an indented block
Άβαταρ μέλους
lepidas
superbTUX
superbTUX
 
Δημοσιεύσεις: 3326
Εγγραφή: 11 Μάιος 2011, 11:10
Εκτύπωση

Re: bash! Πως μπορώ να πάρω τις μεταβλητές απο ένα αρχείο

Δημοσίευσηαπό simosx » 13 Νοέμ 2013, 14:45

lepidas έγραψε:
simosx έγραψε:Δες στο https://gist.github.com/simos/7429085 για παράδειγμα σε Python.

(χμμ, τώρα είδα την απάντησή σου για την Python...)
το έχεις ελέγξει το script .py?
μου βγάζει αυτό
Κώδικας: Επιλογή όλων
File "parse_weather.py", line 20
proper_line = l[:-5]
^
IndentationError: expected an indented block


Ναι, το έχω ελέγξει.
Σε Python έχει σημασία ο αριθμός των διαστημάτων στην αρχή μιας γραμμής κειμένου. Αν δεν είναι σωστά στοιχισμένα, τότε βγάζει πρόβλημα.
Ακόμα και αν πατήσεις κατά λάθος Tab (οπότε φαίνεται ότι δήθεν είναι σωστά στοιχισμένο) ενώ στις άλλες γραμμές υπάρχουν μόνο διαστήματα, τότε βγάζει το παραπάνω σφάλμα.
Δοκίμασε με Αποθήκευση Ως για τον παραπάνω κώδικα και θα λειτουργήσει ως έχει, για Python 2.7.x. (Για Python 3.x θέλει μικρο-αλλαγές.)
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση


Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι