Portál AbcLinuxu, 1. května 2025 21:59

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
20.6.2013 20:42 finn | skóre: 43 | blog: finnlandia | 49° 44´/13° 22´
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Odpovědět | Sbalit | Link | Blokovat | Admin
Error 404 - Soubor nenalezen nebo stránka neexistuje.
Užívej dne – možná je tvůj poslední.
20.6.2013 20:46 mcm | skóre: 13 | blog: linca | domažlice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
už by to mělo fungovat - si byl rychlejší, než já ho tam stačil uploadnout :D
20.6.2013 22:05 Adam
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Odpovědět | Sbalit | Link | Blokovat | Admin
/usr/local/bin/curl
I dont want to live on this planet any more...
20.6.2013 22:08 Adam
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Odpovědět | Sbalit | Link | Blokovat | Admin
Pre stanicu LZPW mi hadze:

./weather.sh
Aktualni cas: Thu Jun 20 22:04:11 CEST 2013
Station name not available
Jan 03, 2012 - 10:00 PM EST / 2012.01.04 0300 UTC
Wind: from the SSE (160 degrees) at 23 MPH (20 KT):0
Visibility: 4 mile(s):0
Sky conditions: partly cloudy
Temperature: 39 F (4 C)
Dew Point: 33 F (1 C)
Relative Humidity: 80%
Pressure (altimeter): 29.97 in. Hg (1015 hPa)
ob: LZPW 040300Z 16020KT 8000 SCT011 SCT033 04/01 Q1015
cycle: 3


co nebude asi pravda, kedze vonku je 25 stupnov odhadom :D
22.6.2013 08:24 mcm | skóre: 13 | blog: linca | domažlice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
jo, me taky. dival sem se na to a je to z toho duvodu, ze sice "aktualni cas" je "sat jun 23, 2013", ale cas, ktery byl meren na stanici je "jan 03, 2012". proto ten nesmysl. Je mozny, ze od ty doby doslo k nejaky zmene a stranice uz nemusi davat informace na web, ale porad je z webu pristupna.

ten aktualni cas tam mam prave z tutoho duvodu, abych vedel, kdy sem ja naposled pozadal o informaci o pocasi a kdy doslo naposled ke skutecnymu mereni.. :)

21.6.2013 02:04 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Odpovědět | Sbalit | Link | Blokovat | Admin
rychle jsem to proletěl a navíc nejsem bashista, zkušenější doplňte, opravte..., takže jen pár poznámek:

a) export mi příjde zbytečný, nepotřebuješ proměnné předávat potomkům, stačí PROMENNA="hodnota"

b) i když je to tady asi zbytečné (kódy nemají mezeru), je dobré proměnné vždy obalovat uvozovkama

c) místo /usr/local/bin/curl určitě jen curl, curl může být v systému na různých místech, takže pak skript nebude fungovat (a aby se curl našel, k tomu slouží PATH, takže pokud ti jen curl nefunguje, přidej si /usr/local/bin do PATH a nepras to ve skriptu)

d)
for ICAO in $2; do
  export ICAO=$2
done
Tomuhle upřímně nerozumím. Co to děla navíc oproti ICAO="$2"? Jako všiml jsem si, že ta tvá kontrukce "ošetří" když -i nemá hodnotu (nechá tam defaultní), ale příjde mi to jako dost nečitelný kód ;-).

e) export ADRESA=`echo "$ADRESA2"` -> proč tak složitě, stačí ADRESA="$ADRESA2"

f) exit 1 slouží pro oznámení, že program skončil s chybou, ovšem nápověda ani verze snad chyba není ne? takže u nápovědy i verze exit 0

g)
# Zakladni nastaveni v pripade, ze skript je spusten bez parametru
  export ADRESA=`echo "$ADRESA"`
Co je tohle? Vždyť ten kód je uplně zbytečný a nic nedělá :-D

h) použití tr je zajímavé, ale pěkné, asi jediný řádek kódu co se mi líbí :-)

i) curl -s $ADRESA$ICAO.TXT -> a tady by se ty uvozovky opravdu hodily, i když jak píšu výše, obalovat jíma každé použití proměnné, protoŽe stačilo by aby byl v adrese jediný & a jsi v loji (curl -s "$ADRESA$ICAO.TXT")

Ale jinak snaha se cení a kód (až na opravu curl) funguje, takže jen tak dál :-). Pokud si to chceš "vylepšit", koukni na gui knihovnu pro bash zenity a můžeš to doplnit i o okýnka / výběr stanice ;-).

Baník pyčo!
21.6.2013 02:18 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Jo a ještě, nahoře máš #!/bin/sh, sice ten tvůj kód v standardním POSIX shellu funguje, ale později bys určitě narazil na nepříjemná omezení (nebo nenarazil, protože tvoje distribuce má jako /bin/sh bash, ale to není pravidlo -> debian má třeba třeba lightweight dash, ale ostatním by to nefungovalo). Pokud to vyvíjíš (respektive si hraješ a učíš se) pro Linux, případně BSD, bezproblému tam cpi /bin/bash a budeš mít větší možnosti (respektive bude ti fungovat více snippetů, co vykopíruješ odkudsi z netu -> tak mi ten kód připadal, ale každý se to musí nějak naučit :-)).

Jinak s nekompatibilitou unix příkazů (třeba ten sed jak zmiňuješ) problém je no :/. Třeba na Linuxu mezi verzema to tak hrozné ještě není, ale mezi Linuxem a BSD už to je dost znát. Tady jako radím u složitějších věcí přejít na nějaký vyšší jazyk python / ruby, kde by to mělo být lepší - ani tam to ale nebude dokonalé, viz třeba python2 VS python3 ;-).
Baník pyčo!
21.6.2013 02:20 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Ach, tr je od pana Kubečka, tak to je pak jasná kvalitka :-D.
Baník pyčo!
22.6.2013 09:06 mcm | skóre: 13 | blog: linca | domažlice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Dokonalá analýza.... :)) takhle nějak jsem si to představoval - po zapracování připomínek musim uznat, že je ten kód čitelnější a přitom na funkčnosti neztratil..

Díky moc, řek bych, že mě to zase kousek šouplo směrem, kam bych chtěl dorazit..

  • ten curl - když jsem si udělal řádek v cronu s odkazem na tenhle skript, nějak mi to nechtelo bez udání celý cesty k curl fachat, ani mě se to hned od začatku nelíbilo, ale byla to jediná možnost, jak to udělat funkční..
  • exit 1 - to je jednoznačná blbost - jasně, že ukončení skriptu po nápovědě nebo verzi není chyba. To je muj renonc
  • obalování proměnných, to tam - uznávám - mohlo být a rozhodně souhlasím - tady to třeba nevadí, jinde by mohlo (příště to tak budu dělat automaticky) :)
  • exporty sem taky vyhodil
  • ad "d" - souhlas, tahle část kódu je zmatečná, vyhozeno
  • ad "g" - kdyz sem se na to export ADRESA=`echo "$ADRESA"` teď díval, tak sem se musel začít smát... njn, člověk často nepřemejšlí :D
  • ad tr - přesně tak, pan Kubečka :)
Takže ještě jednou díky. V případě, že si zase něco vytvořim (ať už v jakýkoliv kvalitě), doufám, že se zase zúčastníš :D

p.s. ad. zenity - díkes za echo, du se v tom pohrabat a zkoušet :)

21.6.2013 08:44 gsnak | skóre: 22 | blog: gsnak
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
Odpovědět | Sbalit | Link | Blokovat | Admin
Neni na to nahodou libmetar? Ja som ju nedavno pouzival.
Čo Rys, to vrah!
22.6.2013 09:10 mcm | skóre: 13 | blog: linca | domažlice
Rozbalit Rozbalit vše Re: Jednoduchý skript pro sledování počasí
O ní jsem nevěděl, vypadá to na zajímavou věc - du si jí vyzkoušet.. díky :)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.