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í
×
    včera 15:00 | Zajímavý článek

    Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.

    Ladislav Hagara | Komentářů: 6
    9.5. 17:22 | Nová verze

    Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.

    Ladislav Hagara | Komentářů: 3
    9.5. 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    8.5. 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.5. 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    8.5. 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    8.5. 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    7.5. 17:33 | Nová verze

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    7.5. 05:33 | Komunita

    Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.

    Ladislav Hagara | Komentářů: 17
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 583 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    Rozcestník

    Dotaz: príliš skorá expanzia príkazu

    jose17 avatar 22.3.2007 13:06 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
    príliš skorá expanzia príkazu
    Přečteno: 141×
    prosím, potrebujem pomôcť s nasledovným kódom:
    ssh -o StrictHostKeyChecking=no host02 ssh -o StrictHostKeyChecking=no host01 'echo "`if [ $(ps -ef | grep xntpd | wc -l) -ne 0 -a \"$(ntpq -p | sed -n 3p | sed \"s/[^ ]* *[^ ]* *\([^ ]*\) *.*/\1/\")\" != 1 ]; then echo \"yes\"; else echo \"no\"; fi`;'
    
    čiže sa jedná o spustenie kódu na vzdialenom stroji (host01), na ktorý sa pripájam z iného vzdialeneho stroja (host02). problém je v tom, že ntpq sa spustí lokálne.

    nejak si s tým už neviem dať rady. díky za pomoc,

    -- jose
    Ja vim, on vi, ty nano!

    Odpovědi

    22.3.2007 14:20 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: príliš skorá expanzia príkazu
    Nejsem si jistý, zda to souvisí, ale rozhodně Vám tam chybí jedny uvozovky úplně na konci parametru příkazu echo.

    ...tedy pokud jsem dobře koukal. ;)
    jose17 avatar 22.3.2007 14:28 jose17 | skóre: 44 | blog: Joseho_blog | Bratislava
    Rozbalit Rozbalit vše Re: príliš skorá expanzia príkazu
    jo, máte recht. ale ich pridanie nepomôže.
    Ja vim, on vi, ty nano!
    22.3.2007 14:54 JMP | skóre: 30
    Rozbalit Rozbalit vše Re: príliš skorá expanzia príkazu
    a mozna by to chtelo dalsi tak, aby to vzalo druhy ssh i s parametrama jako jeden prikaz?
    22.3.2007 15:18 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: príliš skorá expanzia príkazu
    Tak jsem na to ještě koukal a uteklo mi, že tam máte jeden krok mezi. Vypadá to, že věc se má takhle:

    ssh host01 ssh host02 echo $HOSTNAME

    expanduje $HOSTNAME rovnou na mašině, kde to spouštíte, to je celkem ještě jasné.

    ssh host01 ssh host02 'echo $HOSTNAME'

    By člověk možná čekal, že se nic neexpanduje a ssh spojení na host02 dostane 'echo $HOSTNAME' jako svůj parametr... jenomže host jedna prostě spustí:

    ssh host02 echo $HOSTNAME

    Jsme tedy o krok blíže, ale ještě ne tam, kde jsme chtěli.

    Tak to escapujeme i pro interpretaci na host02 a voila:

    ssh host01 ssh host02 'echo \$HOSTNAME'

    máme hostname z host02. Drobný detail, pro $(...) budete muset escapovat vše, tedy: \$\(...\), ale to byste brzy jistě zjistil sám, ono už by si to postěžovalo.
    Medved09 avatar 22.3.2007 15:24 Medved09 | skóre: 26 | Havlíčkův Brod / Brno
    Rozbalit Rozbalit vše Re: príliš skorá expanzia príkazu

    jen tak z hlavy - zkousel jste

    ... \\"$(ntpq -p | sed -n 3p ...
    Fordem tam, vlakem zpátky :-)
    23.3.2007 09:35 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: príliš skorá expanzia príkazu
    Myslím, že bude výrazně přehlednější, když na cílový stroj nakopíruješ skript, který se má spustit. Kdyby se navíc dalo zbavit toho "StrictHostKeyChecking=no", mohlo by se psát jen
    ssh host02 ssh host01 skript
    
    A co se týče toho skriptu, napsal bych ho takhle:
    #!/usr/bin/env python
    
    from subprocess import *
    command = ['/usr/sbin/ntpq', '-p']
    process = Popen(command, stdout = PIPE, stderr = STDOUT)
    
    #precti vsechny radky
    for line in process.stdout:
        pass
    #na konci cyklu bude v promenne line posledni radek
    
    if 'Connection refused' in line: #demon asi neni spusten
        raise SystemExit, 'ntpd is not running'
    
    #posledni radek rozsekej po mezerach
    splitted = line.split()
    
    #vyber treti polozku a preved ji na cislo
    status = int(splitted[2])
    
    #vypis status
    print 'status is %d' %status
    
    Není nutné předem testovat, zda démon běží. Dá se rovnou pustit "ntpq -p" a odchytávat hlášku "Connection refused".

    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.