abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:22 | IT novinky

    Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila (𝕏) open-source robota Microduck. Předobjednat jej lze za 340 eur.

    Ladislav Hagara | Komentářů: 0
    dnes 10:55 | Nová verze

    Open-source autonomní AI agent OpenClaw (Wikipedie) byl vydán ve verzi 2026.8.1 aneb 2.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 18:55 | Nová verze

    Byla vydána první veřejná preview verze PrusaSliceru 3.0. Přesně 15 let po zveřejnění první verze Slic3ru, které připadlo na 1. září 2011. Jedná se o dosud největší upgrade PrusaSliceru: "Řídili jsme se tím, co skutečně potřebujete, a tak jsme například zcela zahodili stávající uživatelské rozhraní a vytvořili ho znovu od nuly. Přinášíme také nový systém projektů, kompletně přepracované profily navržené pro moderní tiskárny s větším

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 15:55 | Nová verze

    Byl vydán Mozilla Firefox 155.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Vypíchnout lze Smart Window, zatím ale dostupné pouze pro uživatele v USA, Kanadě a Francii. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 155 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | IT novinky

    Tima Cooka na pozici generálního ředitele společnosti Apple dnešním dnem nahradil John Ternus, který byl dosud odpovědný za hardware. Tim Cook vedl Apple od roku 2011, kdy funkci převzal od později zesnulého spoluzakladatele společnosti Stevea Jobse. Za 15 let v čele Applu více než zdvojnásobil tržní hodnotu firmy.

    Ladislav Hagara | Komentářů: 4
    včera 11:00 | Pozvánky

    Organizátoři konference LinuxDays ukončil veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata pro letošní ročník. Hlasovat můžete do pondělí 7. září, poté bude podle výsledků hlasování sestaven program pro letošní ročník.

    Petr Krčmář | Komentářů: 5
    včera 10:55 | Nová verze

    Servo, engine webového prohlížeče napsaný v Rustu, byl vydán ve verzi 0.5.0. Novinky shrnuje přehled projektu za červenec. Došlo k dalšímu pokroku ve vykreslování webových stránek. Současným cílem projektu je vytvořit komponentu webového prohlížeče jako WebView pro použití v jiných aplikacích.

    |🇵🇸 | Komentářů: 2
    včera 10:44 | IT novinky

    IKEA a XBOX představují kolekci YXSTABY (pdf). Ta přináší designová a praktická řešení, díky nimž se prostor pro hraní během sekundy promění v útulný a harmonický domov.

    Ladislav Hagara | Komentářů: 2
    včera 02:00 | Nová verze

    Jonathan Thomas oznámil vydání verze 4.0 nelineární střižny OpenShot. Nově podporuje nahrávání obrazu a zvuku, vylepšuje uživatelské rozhraní, mj. color grading, přidává další efekty a mnoho dalšího (seznam změn).

    |🇵🇸 | Komentářů: 0
    31.8. 17:22 | Komunita

    Proběhlo hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu si odhlasovali zodpovědné využívání generativní umělé inteligence.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2534 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: BASH - jednoduchý skript

    1.11.2004 09:43 Petr Dvořáček
    BASH - jednoduchý skript
    Přečteno: 690×
    Dobrý den.
    Napsal jsem si tento jednoduchý skript:

    /bin/ping 10.11.10.2 -c 10 | grep % > /work/file01.db
    /bin/cat /work/file01.db | gawk '{print$6}' > /work/file01.db

    1. řádek: Tím mu říkám, aby pustil 10x ping na 10.11.10.2 a z toho mi vysosnul rádek, ve kterém se nachází hodnoty "%".

    2. řádek: Zde požaduji, aby mi přečetl vytvořený soubor file01.db a z toho mi vysosnul 6 sloupec (ten obsahuje x% loss) a hodnotu mi poslal do /work/file01.db (přepíše původní soubor)

    A teď k věci.
    Jak docílím toho, že když bude hodnota v souboru file01.db větší než například 5%, tak aby mi to obsah souboru poslalo na mail nekdo@nekde.net ?

    Chtěl bych si takto udělat takový úplně nejjednodušší skript na monitorování dostupnosti brány.

    Prosím, nepište mi věci typu "Zkus Nagios..." Ano, Nagios skutečně používám a nemohu si ho vynachválit. Opravdu to teď ale potřebuji vyřešit tak, jak se zde dotazuji.

    Děkuji za každou Vaši odpověď.

    Odpovědi

    1.11.2004 10:05 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    To je zase jednou popisný titulek... <sigh>

    Druhý řádek je příspěvek do soutěže o nejzbytečnější cat. Jo, a jestli je skutečně vstupní a výstupní soubor stejný, tak je navíc i nefunkční.
    if perl -nle 'exit(/(\d+)%/ && $1<5)' /work/file01.db; then
      alespoň_5_nebo_se_nematchlo
    else
      kdepak
    fi
    
    1.11.2004 10:26 Petr Dvořáček
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    ... :) ...

    Děkuji, to je přesně to, co jsem potřeboval najít. Ehm, prosím, mohu-li Tě ještě otravovat, jak by jsi to vyřešil místo toho cat ? použít less ? nebo jak ? V tomto jsem LAMA
    Stanislav Brabec avatar 1.11.2004 11:30 Stanislav Brabec | skóre: 45 | Praha
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Místo

    cat soubor | příkaz

    stačí

    příkaz <soubor

    (viz man bash)
    1.11.2004 10:37 Tomáš | skóre: 31 | blog: Tomik
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    1. zřetezit to do jednoho příkazu (viz Yetiho příspěvek) a nacpat to do proměnné. Pokud pomocný soubor nepotřebuješ k jiným účelům, tak ho nepoužívej.

    2. Zbavit se znaku % -- sed (s/%//) (to se vlastně taky dá připojit za tu první kolonu)

    3. Zbyde číslo, to už se dá porovnat se zadanou hodnotou

    4. Když už máš rozhodnuto, tak se nechá poslat mail (man mail).

    Nevím proč, ale u mě je ta hodnota x% v $7, to bude asi jinou verzí pingu.

    K programování v Bashi vyšel nádherný seriaál od Satrapy na www.root.cz.
    1.11.2004 10:49 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Celej ten soubor tak jak ho pouzivas je zbytecnost, melo by stacit neco jako
    if [`ping -c 10 -q IP | sed -n 's/^.*\([0-9]*\)%.*$/\1/p'` -gt 5]; then
      posli mi mail
    else
      nic mi neposilej
    fi
    1.11.2004 11:10 Petr Dvořáček
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Dělám něco špatně ?

    /bin/mail -s HLASENI nekdo@nekde.net TEST SKONCIL USPESNE SPOJ JE OK
    1.11.2004 11:14 jm
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    No a co to hlasi? :-)
    1.11.2004 11:20 Petr Dvořáček
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    No právě že nic. Zůstane to viset dokud mu nedám CTRL+C.
    1.11.2004 11:31 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript

    Neceka to spis na neco jako EOF (tzn. Ctrl+D)?

    Pak by bylo asi spravne spis tohle:

    /bin/mail -s HLASENI nekdo@nekde.net << _EOF_
    TEST SKONCIL USPESNE SPOJ JE OK
    _EOF_

    1.11.2004 11:45 jm
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Tohle mi funguje bez problemu:

    echo -e "Test probehl uspesne\n" | mail -s "HLASENI" ja@moje.adresa
    1.11.2004 12:10 Petr Dvořáček
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Díky, problém vyřešen.
    1.11.2004 12:45 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Dneska budu rychlejší než Pichi... ;-)

    Chceš-li se vyhnout soutěžím o nejzbytečnější příkazy, tak
    mail -s "HLASENI" ja@moje.adresa <<<"Test probehl uspesne\n"
    1.11.2004 12:46 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Bez \n.
    1.11.2004 12:57 jm
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Nechci se vyhnout, me se to tak libi... ;-)
    1.11.2004 13:21 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Safr. To je tím, že občas musím pracovat ;-)
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    1.11.2004 13:42 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Ale když už, tak už. Bez perlu, sedu, awk, head, tail a cut třeba takhle:
    a=$(ping -q -c 10 host)
    a=${a#*,*, }
    if [ "${a%%%*}" -gt 5 ]
    then
      mail -s "HLASENI" ja@moje.adresa <<<"Cosik blbě"
    else
      mail -s "HLASENI" ja@moje.adresa <<<"Test probehl uspesne"
    fi
    
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    1.11.2004 11:30 Kamil | skóre: 18 | blog: bejkarny
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Zkus to takhle :)
    echo "blabla' |mail -s "subj." kdo@kde.cz
    
    --JP
    1.11.2004 14:21 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Jeste k tomu gawk {print$6}' file >file. V čem je problém? bash se forkne, změní svůj fd(1) (stdout) na file, truncatne ho (smaže), nastaví args na {print$6}' file a exec() (spustí) gawk. (V tvém případě s cat ještě doplněno o vytvoření pipe, navázání fd(0) na pipe, další fork, navázání fd(1) na druhý konec pipe a exec catu) Z toho je na první pohled znát, že ten gawk (nebo v tvém případě cat) bohužel bude pracovat s prázdnám souborem ;-) Nepříjemné, že? Naštěstí není potřeba ten dočasný soubor vůbec vytvářet, jelikož ta kolona může být dlouhá, co se ti vejde do 64kB :-) , ale pro příště na tohle nezapomínej, protože pak se všichni diví, proč jim ten soubor zmizne.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    1.11.2004 14:31 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    Mno, já tvému popisu sice rozumím, ale jen díky tomu že vím, jako to funguje...

    Lidsky bych řekl, že se soubor nejprve na konci roury otevře pro zápis (čímž se smaže obsah). Pak se z něj teprve začnou číst data (na začátku roury), která už tam ale nejsou. Takže se ve výsledku akorát promění v prázdný soubor.
    1.11.2004 15:16 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    No já jsem to taky chtěl popsat s rourou, jenže jak na potvoru se v tomto případě žádná roura nevytváří, ale
    close(1);
    creat("file", getumask());
    případně
    dup2(creat("file", getumask()), 1);
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    1.11.2004 16:16 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: BASH - jednoduchý skript
    V původním druhém řádku ještě s catem se vytvářela. Že si to sám děláš těžší, za to já nemohu ;-)

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.