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 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ářů: 0
    včera 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ářů: 0
    včera 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?
     (58%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (2%)
     (1%)
     (1%)
     (3%)
    Celkem 572 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: Jak poslat argument

    28.11.2017 19:05 dnes
    Jak poslat argument
    Přečteno: 679×
    Ahoj. když napíšu do terminálu ls, tak to vrátí na obrazovku nějaký text. Můžu výsledek poslat nějaké vlastní funkci jako argument (parametr), aniž bych ukládal nejprve výsledek do proměnné?

    Něco jako
    moje_funkce "$(ls)"
    Děkuji.

    Řešení dotazu:


    Odpovědi

    28.11.2017 19:14 NN
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Jasne:
    function funkce { echo $1; }
    
    funkce "$(ls)"
    
    28.11.2017 19:33 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Díky, omlouvám se, uvedl jsem zrovna příklad který funguje, uvedu jiný.
    function funkce() {
      echo $1
    }
    
    funkce "$(head -n 1 ~/VR/2017/"Nové požadavky"/"Stále Aktivní.txt")"
    Cesta i soubor existuje a mám do něj přístup.

    28.11.2017 19:52 NN
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Tady je asi podstatne, ze nektere programy vypisuji vystup na stderr.
    28.11.2017 19:59 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Díky, tohle ale taky nejde, nebo je to špatně?
    funkce "$(head -n 1 ~/VR/2017/"Nové požadavky"/"Stále Aktivní.txt" 2>&1)"
    28.11.2017 22:17 NN
    Rozbalit Rozbalit vše Re: Jak poslat argument
    V jakem to poustis shellu? V Bash to normalne funguje.
    28.11.2017 20:20 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Co tam pohledává ta vlnovka?

    Proč tam nemáš uvozovky kolem "$1"?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.11.2017 21:04 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    vlnovka? no domovský adresář..

    ..$1 to je jedno, po první mezeru by to mělo něco i tak vypsat
    28.11.2017 21:44 mankind_boost | skóre: 7 | Hliněná chýše, 5482/3
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Ani jedno z toho není problém.
    Jen skutečný mankind_boost je zárukou kvality.
    28.11.2017 19:23 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Zřejmě sis to ani nevyzkoušek, protože
    moje_funkce "$(ls)"
    normálně funguje.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.11.2017 20:28 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Možná by bylo jednodušší využít přesměrování
    function funkce() {
        cat
    }
    
    head -n 1 "$HOME/VR/2017/Nové požadavky/Stále Aktivní.txt" | funkce
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.11.2017 21:14 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Na tento demo príklad asi áno, reálna funkcia bude patrne robiť čosi iné.
    28.11.2017 22:01 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Reálná funkce může s těmi daty na STDIN dělat cokoliv. Klidně i uložit do proměnné po slovech do více promenných, což původní příklad nezvládá.

    Nakonec se třeba dopátráme k tomu, že se použije místo všeho jen jeden příkaz a bude vymalováno:
    read slovo1 slovo2 zbytek <"$HOME/VR/2017/Nové požadavky/Stále Aktivní.txt"
    Osobně bych se asi vykašlal na head a vlastní funkci předal jako parametr název toho souboru, ať si ta funkce vybere data, která potřebuje.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.11.2017 22:12 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Uložit do proměnné a vypsat echem to jde, tak nechápu, proč ten string nejde předat jako parametr.
    28.11.2017 22:41 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Protože něco děláš jinak, než jak popisuješ. Možná používáš v konzoli bash, ale skript spouštíš v sh.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.11.2017 23:02 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    V souboru mám
    #!/bin/bash
    a spouštím to napsáním do terminálu přesně takto
    /opt/requirements/main
    Je to správně?

    Jinak jsem zjistil následující věc
    var="$(head -n 1 ~/VR/2017/"Nové požadavky"/"Stále Aktivní.txt")"
    
    echo "aaa"
    echo "-$var-"
    echo "bbb"
    
    A výsledek je
    aaa
     -Požadavky na vyřízení : 6
    bbb
    
    Chybí na konci pomlčka, zkoušeno s různým textem a vždy pomlčka chybí a taky se přidá nějaká mezera na začátku řádku před pomlčku.

    Napadá tě prosím proč?
    28.11.2017 23:18 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Spouštění vypadá OK, i když ta cesta vypadá docela atypicky. Raději bych dal takovou, která je v $PATH, jinak je to opruz.

    Součástí toho stringu je i LF na konci, který tam nejspíš dělá neplechu. Pořád ještě nechceš místo příkazu head použít read nebo alespoň sed?

    Začínám mít tušení, že tě zajímá jen ta šestka na konci. To by bylo docela smutné.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.11.2017 23:47 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    read jsem taky zkoušel, výsledek byl stejný. Ještě mě napadlo s tím LF jak jsi psal, změnil jsem soubor na LF a už to funguje. Díky za pomoc! Jinak jak se spouští sh?
    29.11.2017 00:31 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Takže na vině bylo DOSové zakončení řádek v souboru? Na to se dá přijít příkazem hexdump.

    Pokud chceš jiný interpretr, na začátek skriptu dáš např.
    #!/bin/sh
    a tím dojde k přepnutí na sh. Často se používá i #!/usr/bin/env, který toho umí víc s přesměrováním.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.11.2017 14:13 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Ano, přesně jak píšeš, bylo nastaveno zakončení řádku pro DOS. Na ten hexdump se mrknu. Jinak ještě jednou díky i za to info..
    29.11.2017 00:56 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    K čemu je vlastně dobré znát počet požadavků na vyřízení, když skutečný počet může být třeba 4 nebo 7? Není lepší je prostě brát ze seznamu (adresáře) po jednom, dokud není seznam (adresář) prázdný?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.11.2017 14:15 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Má to jenom informativní charakter, načte, předá funkci a send to email.. Jde o to, že jeden požadavek trvá hodinu, někdy 10 hodin a někdy > 3 dny.
    Josef Kufner avatar 29.11.2017 02:22 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Mám takové tušení, že se snažíš o něco, co by buď šlo řešit úplně jinak, nebo by to šlo řešit mnohem snadněji v něčem jiném než v bashi. Na netriviální věci doporučuju sáhnout třeba po Pythonu. Bash je navržený pro interaktivní používání a na nic moc jiného se příliš nehodí.
    Hello world ! Segmentation fault (core dumped)
    29.11.2017 14:24 dnes
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Vždy to jde udělat jinak a "vždy" to jde udělat líp, je to otázka času a znalostí. Bash mám rád, nevím proč ale zatím jsem v tom udělal vždy všechno, něco znám, většinou velkou část dohledám a když už to fakt nejde, tak se prostě zeptám.

    Python je otřesný jazyk, nikdy více.. jinak svůj jazyk pro linux stále hledám... ale to už říkám 15 let a vždy skončím u bashe :-D
    Chytrex avatar 29.11.2017 14:46 Chytrex | skóre: 30 | Bohumín
    Rozbalit Rozbalit vše Re: Jak poslat argument
    S tím pythonem souhlas.. tak nějak jsme se nezkamarádili.. ale zkus ruby, není dokonalý, ale uměl jsem s tím za chvíli.
    Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
    29.11.2017 17:18 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Python nesedne každému a nehodí se na všechny typy úloh.

    Pro uvedený účel by ten Bash mohl být vyhovující. Něco podobného jsem si kdysi napsal v Bashi na jednom krátkém řádku a nepotřeboval jsem k tomu ani vlastní funkce.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    29.11.2017 18:40 pavele
    Rozbalit Rozbalit vše Re: Jak poslat argument
    Když jsem potřeboval udělat jednoduché grafické rozhraní, použil jsem Python. Pro mne bylo nejjednodušší se jej trochu naučit a napsat v Bashi skript, který volal jednotlivé části programu (další skripty), napsané v Pythonu pro GUI, awk a sed a bash pro vyhodnocování a Gnuplot pro zobrazení.

    Postupem času se mi to jeví jako dobré rozhodnutí, vše mohu bez problémů upravovat/opravovat a vyznám se v tom i po 10 letech...

    Takže Python ano.

    Ovšem za obrovskou výhodu linuxu považuji také to, že si každý může zvolit, co mu "sedí".

    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.