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 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ářů: 0
    včera 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
    včera 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ářů: 4
    včera 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ářů: 1
    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ářů: 5
    27.6. 15:33 | Komunita

    Po 20 letech a 17 otevřených (open source) krátkých filmech Blender Studio oznámilo plán na svůj první celovečerní film. Cílem samozřejmě není jenom nový otevřený film, ale především vývoj a vylepšení otevřených nástrojů pro spolupráci napříč celým procesem a vytvoření otevřené příručky (playbook) pro filmovou produkci ve velkém měřítku s informacemi, které jsou obvykle dostupné pouze uvnitř komerčních studií, a pomoci tak nezávislým tvůrcům překonat technické a organizační bariéry.

    Ladislav Hagara | Komentářů: 0
    27.6. 05:00 | Nová verze

    Byla vydána nová verze 26.6.25 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    26.6. 14:44 | IT novinky

    Apple bez varování odstranil ze svého obchodu sociální síť VKontaktě i další aplikace skupiny VK, jako je VK Music nebo VK Video [Novinky.cz].

    Ladislav Hagara | Komentářů: 19
    26.6. 14:22 | IT novinky

    V dubnu loňského roku představený poštovní klient Notion Mail bude 22. září ukončen.

    Ladislav Hagara | Komentářů: 3
    26.6. 04:33 | Komunita

    Konference OpenAlt 2026 hledá přednášející. Proběhne o víkendu 7. a 8. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

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


    Dotaz: serazeni pole v bashi

    30.6.2007 16:22 Petr
    serazeni pole v bashi
    Přečteno: 1824×
    prosim vas o radu kterak seradit hodnoty v poli inkrementalne. Pole obsahuje napriklad:

    #!/bin/bash

    pole=( 1 10 6 9 10 22 11 34 21 12 2 )

    Moc mi to pomuze. Dekuji predem.

    Odpovědi

    30.6.2007 17:15 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    Jde to udělat třeba takto pomocí jednoduchého třídění výměnou s časovou složitostí O(N^2):
    #!/bin/bash
    POLE=(4 1 8 6 10)
    echo "Pole před: ${POLE[@]}"
    for ((I=0;I<${#POLE[@]};I++)); do
    	for ((J=I+1;J<${#POLE[@]};J++)); do
    		if [ ${POLE[J]} -lt ${POLE[I]} ]; then
    			TMP=${POLE[J]}
    			POLE[J]=${POLE[I]}
    			POLE[I]=$TMP
    		fi
    	done
    done	
    echo "Pole po: ${POLE[@]}"
    
    David Watzke avatar 30.6.2007 18:07 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    pole=($(sed 's: :\n:g' <<< "${pole[*]}" | sort -n))
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    30.6.2007 20:10 Martin Čížek | skóre: 20 | Praha
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    IFS=$'\n'
    pole=($(echo "${pole[*]}" | sort -n))
    IFS=$' \t\n'
    Kdyby dva z nás byli dvěma z nich, všichni z nás by mohli být všemi z nich.
    David Watzke avatar 30.6.2007 20:19 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    IFS=$'\n' pole=($(sort -n <<< "${pole[*]}"))
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    2.7.2007 08:38 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    $ perl -mString::Escape -le '($a = <>) =~ s/$//;print String::Escape::escape("printable", $a)' <<<"$IFS"
     \t\n
    $ pole=( 1 10 6 9 10 22 11 34 21 12 2 )
    $ IFS=$'\n' pole=($(sort -n <<< "${pole[*]}"))
    $ perl -mString::Escape -le '($a = <>) =~ s/$//;print String::Escape::escape("printable", $a)' <<<"$IFS"
    \n
    
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    2.7.2007 11:33 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    nie je chomp ($a = <>); bezpečnejšie ?
    2.7.2007 13:28 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    Bohužel :-(
    $ perl -mString::Escape -le '($a = <>) =~ s/$//;print String::Escape::escape("printable", $a)' <<<"$IFS"
     \t\n
    $ perl -mString::Escape -le 'chomp ($a = <>);print String::Escape::escape("printable", $a)' <<<"$IFS"
     \t
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    2.7.2007 13:52 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    hmm, to potom nerozumiem dôvodu, prečo tam máte ten regulárny výraz :-(
    2.7.2007 13:57 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    Heh, předtím mi tam lezly dvě \n za sebou a teď už to nedělá. Už nevím čí jsem.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    2.7.2007 14:01 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    Teď koukám, že to úplně spraví
    perl -mString::Escape=escape -le 'print escape("printable", scalar <>)' <<<"$IFS"
    Dnes nemám svůj den. Pointa byla v tom, že se to IFS nevrátí do default podoby.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    David Watzke avatar 2.7.2007 14:45 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    Pointa byla v tom, že se to IFS nevrátí do default podoby.
    Aha, to je divný. Dík za warning.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    2.7.2007 21:55 Petr
    Rozbalit Rozbalit vše Re: serazeni pole v bashi

    Tohle nejde, promenna IFS zustane nastavena na \n i dal. Jde ale pouzit subshell, treba takto:

    a=( $( IFS=$'\n'; echo "${a[*]}" | sort -n ) );

    wolf09 avatar 2.7.2007 10:08 wolf09 | skóre: 30
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    echo 1 3 7 17 7 | tr ' ' '\n' | sort -k1n | tr '\n' ' '
    Zkusili jste to vypnout a znovu zapnout ?
    2.7.2007 12:16 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    V pythonu (pokud je vstupem řetězec obsahující čísla oddělená mezerou).
    >>> pole="1 10 6 9 10 22 11 34 21 12 2".split()
    >>> pole_int = [int(x) for x in pole]
    >>> print sorted(pole_int)
    [1, 2, 6, 9, 10, 10, 11, 12, 21, 22, 34]
    
    Samozřejmě je příjemnější, když pole obsahuje rovnou čísla:
    >>> pole = [1, 10, 6, 9, 10, 22, 11, 34, 21, 12, 2]
    >>> pole.sort()
    >>> print pole
    [1, 2, 6, 9, 10, 10, 11, 12, 21, 22, 34]
    
    2.7.2007 12:29 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    google: python user defined sort
    uloha: v prvom príklade nepoužiť print_int :-)
    2.7.2007 13:25 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    Tak to mě ani nenapadne. Akorát by vznikla zase další "plodná" diskuse ohledně lambdy, efektivity, přehlednosti, počtu řádků, zbytečného volání int(), přístupu decorate-sort-undecorate a nakonec by si nějaký dobrák vzpomněl, že to vlastně není v bashi :-)
    2.7.2007 13:54 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    to ja len tak, že niekde používate metódy, niekde funkcie, niekde pretypovanie :-)
    2.7.2007 22:07 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: serazeni pole v bashi
    STFW: bash array sort

    1. http://tldp.org/LDP/abs/html/arrays.html v texte hľadať slovíčko bubble

    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.