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 08:50 | Nová verze
    Vyšel Redmine 7.0, jeden z nejlepších open source ticketovacích systémů. Došlo k migraci na Rails 8, vylepšení UI/UX, Workflow, byla přidána podpora náhledu pro Microsoft Office a LibreOffice dokumenty, došlo k výkonnostním optimalizacím a přibylo spoustu dalších oprav a novinek. Více informací v oficiálním oznámení.
    Max | Komentářů: 0
    včera 16:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 166 (pdf).

    Ladislav Hagara | Komentářů: 1
    včera 03:33 | Pozvánky

    Blíží se prázdniny a než se rozutečete k moři, je na čase se opět sejít na Virtuální Bastlírně - pravidelném setkání elektroniků, ajťáků, bastlířů a obecně nadšenců do techniky. Co si pro vás strahovští bastlíři připravili tentokrát? Určitě proberou blížící se Linux Days i další události. U softwaru se chvíli zdrží a poví si kupříkladu o tom, jak se zbavit Bambu Cloudu, ale nepřijít o možnost ovládat tiskárnu na dálku. Řeč dojde i na AI,

    … více »
    bkralik | Komentářů: 1
    včera 03:22 | Nová verze

    Vývojáři postmarketOS vydali verzi 26.06 tohoto operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 1
    včera 03:11 | Nová verze

    Byla vydána nová verze 2.55.0 distribuovaného systému správy verzí Git. Přispělo 100 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    29.6. 20:22 | IT novinky

    Craig Loewen na blogu Microsoftu oznámil veřejnou preview verzi WSL kontejnerů, tj. linuxových kontejnerů ve Windows Subsystem for Linux (WSL). Spouští se příkazem wslc.exe.

    Ladislav Hagara | Komentářů: 1
    29.6. 19:00 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 2026.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem 9 nových nástrojů v oficiálním oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    29.6. 12:55 | Nová verze

    Grafická aplikace Krokiet/Czkawka pro vyhledávání a odstraňovaní nepotřebných souborů (duplicitní soubory, prázdné složky, podobné obrázky, podobná videa, poškozené soubory a další) byla vydána ve verzi 12.0.0. Podrobný přehled novinek v příspěvku na Medium. Jedná se o poslední verzi frontendu Czkawka GTK nad Czkawka Core. Uživatelům se doporučuje migrovat na frontend Krokiet postavený nad frameworkem Slint. Představena byla aplikace Cedinia pro Android využívající Czkawka Core. Dostupná je jako APK pro ruční instalaci.

    Ladislav Hagara | Komentářů: 6
    29.6. 04:22 | Nová verze

    Po téměř třech letech od vydání verze 9 byla vydána nová verze 10 linuxové distribuce Mageia (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    28.6. 04:00 | Zajímavý software

    Nourish (GitHub) je nový správce oken pro Linux. Tradiční plochy nahrazuje nekonečným plátnem a posouváním a přibližováním. Využívá vlastní kompozitor pro Wayland s názvem y5. Videoukázka.

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (16%)
     (26%)
    Celkem 2021 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Používáme expect - scp via script

    9.6.2009 14:34 | Přečteno: 2740× | zbytek | Výběrový blog

    Expect je nástroj pro automatizaci obsluhy interaktivních aplikací jako jsou scp, telnet, ftp, passwd, fsck, rlogin, tip, atd.

    Já na něj narazil při hledání způsobu, jak dostat soubor pomocí skriptu na hosting. Můj hosting totiž umožňuje pouze scp upload souborů.

    Skript

    #!/usr/bin/expect -f
    set filename [lindex $argv 0]
    set directory [lindex $argv 1]
    spawn scp "$filename" login@server:$directory/
    expect {
      -re ".*es.*o.*" {
        exp_send "yes\r"
        exp_continue
      }
      -re ".*sword.*" {
        exp_send "very_secret_password\r"
      }
    }
    interact

    Rozbor skriptu

    #!/usr/bin/expect -f
    - hlavička skriptu s přesnou cestou k binárce expect
    set filename [lindex $argv 0]
    - přiřadí první spouštěcí parametr (v našem případě název souboru) do proměnné filename
    set directory [lindex $argv 1]
    - přiřadí druhý spouštěcí parametr (v našem případě vzdálenou cestu) do proměnné directory
    spawn scp "$filename" login@server:$directory/
    - spustí příkaz scp se zadanými parametry
    expect {
    - začátek samotného automatického zpracovávání
    -re ".*es.*o.*" {
    - očekáváme ".*es.*o.*", tj. dotaz na uložení cílového serveru do ověřených (Yes/No nebo yes/no)
    exp_send "yes\r"
    - expect za nás zadá yes a stiskne enter
    exp_continue
    - a předá řízení zpět
    }
    -re ".*sword.*" {
    - očekáváme dotaz na heslo
    exp_send "very_secret_password\r"
    - expect za nás zadá heslo a stiskne enter
    }
    }
    interact
    - a vrátí volant zpět uživateli

    Použití skriptu

    Skript voláme příkazem ./jmeno_skriptu nazev_souboru vzdalena cesta

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    9.6.2009 14:39 Zdenek
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    Na hostingu nemuzete zapisovat do souboru .ssh/authorized_keys?
    9.6.2009 14:46 Milan Horák | skóre: 24 | blog: strange blog | Havlíčkův Brod
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    No právě - nemůžu. A proto jsem to řešil takhle.

    Pokud by to někoho zajímalo, tak to mám na nightbuildy Kicadu.
    Každý dobrý skutek bude po zásluze potrestán. Ale ten pocit ... ;o)
    Josef Kufner avatar 9.6.2009 16:10 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    A zkoušel jsi si postěžovat provozovateli toho hostingu? ;-)
    Hello world ! Segmentation fault (core dumped)
    9.6.2009 16:57 Milan Horák | skóre: 24 | blog: strange blog | Havlíčkův Brod
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    Napadlo mne to, ale nee. Sice to je asi drbání pravou rukou za levým uchem, ale zase jsem se naučil něco nového :-)
    Každý dobrý skutek bude po zásluze potrestán. Ale ten pocit ... ;o)
    9.6.2009 23:54 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script

    Není problém si požádat o spoustu věcí, jen je třeba se ozvat, nikoho neukousneme :-) Každopádně expect je prima a jako řešení jinak neřešitelných problémů ho sem tam také použiju, autoři některého SW jsou snad padlí na hlavu, že neumožňují dávkový režim a vynucují si akci uživatele.

    -- Nezdar není hanbou, hanbou je strach z pokusu.
    10.6.2009 07:43 Milan Horák | skóre: 24 | blog: strange blog | Havlíčkův Brod
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    A sakra, našli mne :-)
    Každý dobrý skutek bude po zásluze potrestán. Ale ten pocit ... ;o)
    9.6.2009 23:52 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script

    Dal bych mu je, ale nějak jsem neviděl nic v inboxu :-)

    -- Nezdar není hanbou, hanbou je strach z pokusu.
    9.6.2009 17:47 CEST
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    To jako, ze to je zakazany v configu (at uz authorized_keys nebo pouze autentizace heslem) nebo proste nejde adresar .ssh vytvorit?

    Jinak ignorovat to potvrzeni RSA klice serveru lze pomoci scp -o StrictHostKeyChecking no -o UserKnownHostsFile /dev/null

    Jinak ale nechapu, kdyz to clovek spousti interaktivne ("- a vrátí volant zpět uživateli"), proc to heslo nezadavat taky interaktivne. Ja osobne jsem expect pouzil, kdyz jsem potreboval opravdu z interaktivniho systemu udelat neinteraktivni. telnetem se prihlasit na switch, udelat nejakou cinnost (dump configurace do script souboru, upload script souboru na tftp, smazani script souboru), ktera vyzadovala opravdu vstupy od uzivatele a ty vstupy byly opravdu zavisle na predchozi zprave od switche - napr. pri generovani scriptu uz muze script soubor existovat, pak se musi potvrdit prepsani, nebo se rovnou zapisuje, pri uploadu na tftp muze upload selhat, pri odhlasovani se nekdy switch pta, jestli ma ulozit provedene zmeny.

    Ale jinak expect je fakt skvelej:)
    9.6.2009 21:05 Milan Horák | skóre: 24 | blog: strange blog | Havlíčkův Brod
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    Jinak ale nechapu, kdyz to clovek spousti interaktivne ("- a vrátí volant zpět uživateli"), proc to heslo nezadavat taky interaktivne.

    Páč mám script, který mi udělá checkout svn, udělá balíček se zdrojovými kódy a zkompiluje nightbuild binárku Kicadu a šoupne to všechno přes scp na web.

    Takže v tomhle případě "- a vrátí volant zpět uživateli" znamená, že volant dostane zpátky skript a ne já, který jsem už doma :-)
    Každý dobrý skutek bude po zásluze potrestán. Ale ten pocit ... ;o)
    10.6.2009 11:46 CEST
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    aha, tak to jo:)
    9.6.2009 15:33 Mortal | skóre: 26 | blog: mortals_log
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    scp neni interaktivni, sftp je
    V pekle jsou samé diskety a ďábel je velká disketová mechanika
    9.6.2009 15:35 Mortal | skóre: 26 | blog: mortals_log
    Rozbalit Rozbalit vše Re: Používáme expect - scp via script
    dobra, vyzadani hesla je vlastne trochu interakce :)
    V pekle jsou samé diskety a ďábel je velká disketová mechanika

    Založit nové vláknoNahoru

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