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:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    včera 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    5.10. 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 34
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 16
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 9
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (15%)
     (17%)
     (22%)
     (15%)
     (18%)
     (16%)
     (15%)
    Celkem 181 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Dotaz: Programování v bashi,

    25.2.2009 19:46 František Štolba
    Programování v bashi,
    Přečteno: 813×

    Dobrý den,

    chtěl bych Vás všechny poprosit o pomoc. Dostal jsem následující zadání:

    V jazyce příkazového interpretu ’shell’ (Bourne-Again SHell) napište program sort.sh,
    realizuje jednuduchý program pro třídění textových souborů (viz man sort). Nezapomeňte
    na ošetření chybného formátu vstupních dat.

    Bohužel je to mimo mé síly a už nevím na koho bych se obrátil. Vážne bych si cenil, kdyby jste mi jakkoliv pomohli. Jsem už docela zoufalý.

    Děkuji za každou radu.

    František Štolba

    Odpovědi

    25.2.2009 20:23 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Programování v bashi,
    1.) Nikdo vám tu nebude dělat domácí úkoly.

    2.) Nikde nepíšeš jaké vstupní údaje máš - jaký formát atd....co jsi udělal atd...

    3.) Když sem dáš výsledek co jsi napsal tak ti poradíme co máš špatně.
    25.2.2009 21:50 František Štolba
    Rozbalit Rozbalit vše Re: Programování v bashi,

    ok, napravím to.

    25.2.2009 23:03 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Programování v bashi,

    sort.sh:

    #!/bin/bash
    sort $*
    

    Zadání to IMHO zcela vyhovuje... ;-)

    Každý má právo na můj názor!
    26.2.2009 12:55 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Programování v bashi,
    Ovšem toto mu asi učitel omlátí o hlavu a dá za 5 :-) taky mě to napadlo jako první, ale neodvažoval jsem to tu napsat aby se toho nechytl.
    26.2.2009 12:59 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Programování v bashi,

    No za 5 nevím, přijde mi to jako správné řešení. Proč psát něco, co je dávno hotové, otestované, navíc v céčku? V praxi bys použil přesně takové řešení, škola by si neměla vymýšlet blbosti.

    26.2.2009 13:44 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Programování v bashi,
    V praxi by nevymyslely takovou blbost psát jeden příkaz do skriptu.
    Amarok avatar 26.2.2009 14:27 Amarok | skóre: 33 | blog: blogoblog
    Rozbalit Rozbalit vše Re: Programování v bashi,
    To prece neni ani reseni podle zadanych pozadavku. Chybi "ošetření chybného formátu vstupních dat".
    GNUniverse - May the source be with you...
    26.2.2009 15:33 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Programování v bashi,

    A sort nemá potřebné kontroly implementované?

    Amarok avatar 26.2.2009 17:30 Amarok | skóre: 33 | blog: blogoblog
    Rozbalit Rozbalit vše Re: Programování v bashi,
    To samozrejme ma. Je tedy spis otazka, jestli ten ucitel vubec vi, o cem mluvi. Z toho zadani ukolu je zrejme, ze chce po zakovi implementovat vlastni kontrolu vstupnich dat.
    GNUniverse - May the source be with you...
    26.2.2009 15:04 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Programování v bashi,
    Účelem je aby tazatel zvládnul programování v bash, nikoliv aby naprokramoval sort v bash. To je jen pomůcka k tomu jak se zdokonalit v bashi, nikoliv cíl. Pokud by tazatel bash uměl, tak samozřejmě v něm nemusí psát žádné kraviny. Pakliže ho neumí, tak musí pár buď kravin nebo užitečných věcí (to je jedno) napsat, aby se to naučil.
    26.2.2009 15:32 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Programování v bashi,

    Jistě, leč to je právě problém školství, že se žáci učí často na krávovinách. Kdyby zadání bylo smysluplné, i žáci by je možná raději a ochotněji řešili. Proč by si ale učitel neusnadnil život, že..

    26.2.2009 21:12 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Programování v bashi,
    Pro žáka který bash neovládá je takový sort sakra velká a hlavně smysluplná challenge :), takže problém školství je možná v tom, že ne všem to ti lidé vysvětlí. Těm, kterým vysvětlí, že když dnes zvládnou sort, tak v budoucnu zvládnou cokoliv co po nich kdo bude chtít v praxi a bude "doopravdy potřebné", tak pro ty má smysl implementovat i krávoviny. Protože ono i když třeba zadáte implementovat nějaký příklad z praxe, tak se najde jiný remcal co řekne že ten výsledek stejně nebude mít praktické využití (rozumějte -- je to sice příklad z praxe ale nikdo ten soft vlastně nepotřebuje, navíc od studenta začátečníka, že). Takže remcalové se najdou vždycky. Ale je potřeba jim to vysvětlit, aby měli šanci se odremcovatět. Nejpádnější argument je třeba ten, že i v praxi, pokud nebudou zcela svobodnými vývojáři z pohádek, kteří si programují jen to co chtějí, tak i v praxi budou nemalou část své pracovní doby trávit nezajímavými a nepraktickými kravinami, jen aby uspokojili zadavatele/zaměstnavatele/kohokoliv. Programování něčeho smysluplného, je-li to navíc užitečné a ještě ke všemu se to v praxi osvědčí a bude to i někdo používat, to je taková třešínka na dortu a souhlasím s vámi že potěší ;)
    5.3.2009 09:44 František Štolba
    Rozbalit Rozbalit vše Re: Programování v bashi,

    Nakonec sem to dal dohromady hlavně díky kamarádovy. A pana učitele bych se chtěl zastat. Je to jeden z těch lepších učitelů.

    Kdyby to někoho zajímalo tak sem to vytvořil takto:

    #!/bin/bash

    if test $# -ne 1
    then
        echo "Zadejte prosim cestu k souboru!"
        exit
    fi

    # Overeni existence souboru
    if test -f $1
    then
     soubor=$1
    else
     echo "Soubot neexistuje!!!"
     exit 0
    fi


    # Nactemem radky ze souboru do pole
    i=0
    pole=[]
    while read radka; do
     pole[$i]=$radka
     i=$(expr $i + 1)
    done <$soubor

    #######
    prohodit()
    {
        local pomocna=${pole[$1]}
        pole[$1]=${pole[$2]}
        pole[$2]=$pomocna               
        return
    }
    #######


    #Pocet prvku v poli, pocet kroku cyklu
    pocet_prvku=${#pole[@]}
    echo "Pocet radku: $pocet_prvku"
    let "pocet_kroku = $pocet_prvku - 1"

    while [ "$pocet_kroku" -gt 0 ]
    do

      index=0
     
        while [ "$index" -lt "$pocet_kroku" ]
        do
              if [ ${pole[$index]} \> ${pole[`expr $index + 1`]} ]
          then
            prohodit $index `expr $index + 1`
          fi 
              let "index += 1"
         done                         
    let "pocet_kroku  -= 1"
    done 

    # Vypsani serazeneho pole
    i=0
    while [ "$i" -lt "$pocet_prvku" ]
    do
     echo ${pole[$i]}
     let "i += 1"
    done

    exit 0

    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.