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 23:49 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 26.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | Zajímavý článek

    Bylo vydáno nové číslo hackerského magazínu tmp.0ut: Volume 5.

    Ladislav Hagara | Komentářů: 0
    včera 01:44 | Nová verze

    Byla vydána nová stabilní verze 8.2 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 152. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 1
    3.9. 23:11 | Nová verze

    Byla vydána nová stabilní verze 4.0 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). S rozhraním přepsaným do Qt. Přehled novinek také na YouTube. Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 2
    3.9. 16:55 | IT novinky

    NVIDIA kupuje Hugging Face za 12,93 miliardy dolarů.

    Ladislav Hagara | Komentářů: 3
    3.9. 15:44 | IT novinky

    Předobjednat si lze nový jednodeskový počítač Arduino VENTUNO Q s předinstalovaným Ubuntu. S 16 GB LPDDR5 a 64 GB eMMC. Pro lokální LLM, agentní AI, počítačové vidění, robotiku…

    Ladislav Hagara | Komentářů: 1
    3.9. 13:00 | Zajímavý software

    Hexpair není nejlepší HEX editor na světě a ani se o to nesnaží. Zato je k dispozici kdykoliv a kdekoliv – všude tam, kde máte svůj Vim. Vznikl jako hobby projekt před pár měsíci a dospěl do stavu, kdy by mohl být užitečný širší komunitě. Přepnout do HEX režimu se dá i uprostřed rozdělané práce: Soubor, který už máte otevřený běžným vim file.md, jedním příkazem přepnete do HEX editoru a dalším příkazem ho můžete vrátit zpět do textu. Kurzor přitom

    … více »
    Cohen | Komentářů: 1
    3.9. 01:55 | Nasazení Linuxu

    CERN dlouhodobě používal vlastní sestavení RHEL, ze kterého přešel na CentOS Stream. Federico Vaga a Nikos Tsipinakis ale nyní v přednášce na MiniDebConf Winterthur 2026 popisují plán probíhajícího přechodu na Debian pro řízení akcelerátorů. Důvodem k opuštění CentOS Stream jsou zachování zpětné kompatibility se starším hardwarem, kterou Red Hat narušuje, když tlačí sestavení balíčků pro novější verze architektury (x86-64), a nedostatečné nástroje pro sestavování vlastních balíčků a repozitářů.

    |🇵🇸 | Komentářů: 20
    3.9. 01:44 | Nová verze

    UZDoom (Wikipedie), tj. fork GZDoom, byl vydán ve verzi 5.0.0. Videopředstavení na YouTube. Podrobný přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    2.9. 16:11 | Nová verze

    Příručka Linux From Scratch pro sestavení základního linuxového systému byla aktualizována v pravidelném půlročním termínu. Vydání 13.1 shrnuje přes 40 nových verzí balíčků a několik patchů. Navazující příručka Beyond Linux From Scratch s recepty pro sestavení dalších knihoven a aplikací zatím vydána nebyla, ačkoliv vývojová verze stále dostává aktualizace. Lze je číst online nebo stáhnout v HTML či PDF.

    |🇵🇸 | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (3%)
     (20%)
     (29%)
     (7%)
     (5%)
     (2%)
     (14%)
     (21%)
    Celkem 2570 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    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: 740×
    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: 46 | 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: 46 | 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: 46 | 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: 46 | 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: 46 | 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: 46 | 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: 46 | 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: 46 | 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: 46 | 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.