abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:11 | Nová verze

    Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 22:22 | Bezpečnostní upozornění

    Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].

    Ladislav Hagara | Komentářů: 2
    včera 21:11 | Zajímavý článek

    V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.

    Ladislav Hagara | Komentářů: 5
    včera 14:33 | Pozvánky

    O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    8.5. 21:55 | Nová verze

    Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.

    Ladislav Hagara | Komentářů: 21
    8.5. 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 5
    8.5. 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    7.5. 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    7.5. 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 4
    7.5. 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (13%)
     (16%)
    Celkem 146 hlasů
     Komentářů: 10, poslední 8.5. 17:35
    Rozcestník

    Dotaz: ssh zastavi skript

    6.8.2006 01:35 h7
    ssh zastavi skript
    Přečteno: 117×
    Ahoj, rad bych pomoci nize psaneho skriptu automatizoval drobne ukony na vice masinach.Mam zprovozneno funkcni ssh overovani pomoci klice. Pokud odkomentuji # echo totofunguje ,tak while probehne ,ale s ssh commandem ne.Kde delam chybu? Pekne nedelni rano! h7
    while read ip; do
    if $(echo $ip|grep -q '#')
    then
     echo "Lokalita $ip"
    else
    # echo totofunguje
     ssh $ip ls
    fi
    done < /serverlist.txt
    
    #### serverlist.txt ###
    
    #praha
    1.2.3.4
    #brno 
    2.3.4.5
    #ostrava
    1.4.7.8
    

    Odpovědi

    6.8.2006 04:04 Haaja | skóre: 25 | blog: haaja | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    No tak na prvni pohled mi prijde, ze v te druhe casti podminky, za else v promenne $ip neni jen ipadresa ale je tam treba: praha 1.2.3.4, tam se tezko pripoji.

    6.8.2006 04:07 Haaja | skóre: 25 | blog: haaja | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Tak jsem to zkusil, a je to tak, takze to chce nejak vzit pouze tu ip adresu, jde to vyresit treba takto:
    #!/bin/bash
    while read ip 
      do if $(echo $ip|grep -q '#'); then
            echo "Lokalita $ip"; 
         else
            ip=${ip#*:}
            ssh $ip ls
         fi 
      done < ~/serverlist.tx
    

    haaja@book ~ $ cat serverlist.txt 
    #praha:127.0.0.1
    brno:127.0.0.1
    

    Nevim jestli je to nejlepsi reseni, ale snad to pomuze.
    6.8.2006 09:57 h7
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Cau ,dik za snahu... ..ale blbe jsem vlozil dotaz (formatovani),txt soubor mam opravdu ve tvaru
    #praha
    1.2.3.4
    #brno
    1.2.3.5
    #ostrava
    1.2.3.6
    Nemuze to byt nejakym nastavenim ssh ,pouzima fedoru 5 h7
    6.8.2006 10:10 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Opravil jsem formátování v dotazu.
    When your hammer is C++, everything begins to look like a thumb.
    6.8.2006 11:48 Haaja | skóre: 25 | blog: haaja | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Aha, uz jsem pochopil v cem je zakopany pes. Myslim, ze nastaveni ssh na to vliv nema. Ale dela mi to zrejme to same co vam, pripoji se na prvni ssh adresu a pak se ukonci.
    6.8.2006 11:54 h7
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    yoyo to je presne to nezadouci chovani... kdysi davno jsem podobnou while smycku + ssh pouzival na mandrake a tam vse chodilo. Problem tedy hledam v ssh. h7
    6.8.2006 12:19 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ssh zastavi skript

    Problém je v tom, že potomek, v tomto případě ssh, zdědí veškeré deskriptory otevřených souborů od svého rodiče, v tomto případě shellu provádějícího skript. Protože máte přesměrovaný standardní vstup při provádějí skriptu while, bude i ssh spušten s takto přesměrovaným vstupem a podle všeho vám ho "vyluxuje". Vyřešit to můžete např. takto:

    #!/bin/bash
    
    exec 3<serverlist.txt
    while read ip <&3; do
    if [ "${ip#*#}" != "${ip}" ]
    then
      echo "Lokalita $ip"
    else
      ssh "$ip" ls
    fi
    done
    
    6.8.2006 12:28 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Jo, a nedávejte, prosím, předem jedno "nebyla vyřešena" do zásoby.
    6.8.2006 12:33 Haaja | skóre: 25 | blog: haaja | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Omlouvám se.
    To "nebyla vyřešena" jsem dal já, omylem jsem kliknul na "byla" vyřešena a aby to nemátlo, tak jsem to chtěl vrátit a jediné co mě napadlo, bylo použít tlačítko "nebyla". Aby se k tomu příspěvku někdo vrátil.

    Moc dobře to řešení nechápu, konkrétně to použití exec 3< ale k tomu snad pomůže man stránka.
    6.8.2006 12:40 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Příkaz exec vám otevře ten soubor coby handle 3 a read necháte číst z tohoto otevřeného souboru (ampersand mu říká, že trojka je číslo deskriptoru a ne jméno souboru). Tím nedojde k přesměrování standardního vstupu a ssh pracuje s vaším terminálem, což potřebujete.
    6.8.2006 12:43 Haaja | skóre: 25 | blog: haaja | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Děkuji za objasnění.
    David Watzke avatar 7.8.2006 05:12 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Omlouvám se.
    To "nebyla vyřešena" jsem dal já, omylem jsem kliknul na "byla" vyřešena a aby to nemátlo, tak jsem to chtěl vrátit a jediné co mě napadlo, bylo použít tlačítko "nebyla". Aby se k tomu příspěvku někdo vrátil.
    Jj, chtělo by to fixnout bug #534 :-)
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    Josef Kufner avatar 6.8.2006 12:44 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    A nebylo by jednodušší ssh vstup sebrat?
    while read ip; do
    if $(echo $ip|grep -q '#')
    then
     echo "Lokalita $ip"
    else
    # echo totofunguje
     ssh -n $ip ls
    fi
    done < /serverlist.txt
    Hello world ! Segmentation fault (core dumped)
    6.8.2006 12:46 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    To by sice jednodušší bylo, ale hrozí riziko, že až budete za pár měsíců ten skript upravovat, nevzpomenete si na to, přidáte do některé z větví jiný příkaz, který něco čte ze standardního vstupu, a budete tam, kde jste byl.
    Josef Kufner avatar 6.8.2006 18:31 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Třeba není tak hloupý a vzpomene si na tenhle problém s ssh a připíše za ten příkaz </dev/null
    Hello world ! Segmentation fault (core dumped)
    6.8.2006 13:22 h7
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Diky vsem za odpoved,zas jsem trochu chytrejsi.. Mohl by mi nekdo vysvetlit proc nasledujici konstrukce nefunguje?

    exec 3<serverlist.txt
    while read ip ; do
    if [ "${ip#*#}" != "${ip}" ]
    then
      echo "Lokalita $ip"
    else
      ssh "$ip" ls
    fi <&3
    done
    
    6.8.2006 13:26 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ssh zastavi skript
    Z přesně stejného důvodu jako to, co jste měl na začátku: ssh zdědí deskriptor, kterým čtete obsah souboru serverlist.txt, jako svůj standardní vstup.

    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.