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 14:55 | Zajímavý software

    Makepad dospěl do verze 1.0 (𝕏). Jedná se o multiplatformní open source UI framework pro Rust napsaný v Rustu.

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

    Konference OpenAlt 2025 hledá přednášející. Proběhne o víkendu 1. a 2. 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
    včera 15:33 | Zajímavý článek

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

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Komunita

    Byl publikován květnový přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    15.5. 21:33 | Nová verze

    Programovací jazyk Rust (Wikipedie) dnes slaví 10 let od vydání verze 1.0. Přímo na oslavě byla vydána nová verze 1.87.0. Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

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

    Evropská komise obvinila provozovatele čínské platformy TikTok z porušování pravidel EU kvůli netransparentnosti v reklamě. Komise, která v EU plní i funkci antimonopolního úřadu, to dnes uvedla v tiskové zprávě. TikTok, který patří čínské firmě ByteDance, se může k předběžnému nálezu vyjádřit. Pokud ale podezření komise nevyvrátí, hrozí mu pokuta až do šesti procent z ročního globálního obratu.

    Ladislav Hagara | Komentářů: 17
    14.5. 20:44 | Komunita

    Sovereign Tech Agency (Wikipedie), tj. agentura zabezpečující financování svobodného a otevřeného softwaru německou vládou, podpoří GFortran částkou 360 000 eur.

    Ladislav Hagara | Komentářů: 0
    14.5. 14:00 | IT novinky

    Microsoft hodlá zrušit zhruba tři procenta pracovních míst. Microsoft na konci loňského června zaměstnával kolem 228.000 lidí. Tři procenta z tohoto počtu představují téměř 7000 pracovních míst.

    Ladislav Hagara | Komentářů: 16
    14.5. 13:33 | IT novinky

    V říjnu loňského roku provedl Úřad pro ochranu hospodářské soutěže (ÚOHS) místní šetření u společnosti Seznam.cz. Krajský soud v Brně tento týden konstatoval, že toto šetření bylo nezákonné.

    Ladislav Hagara | Komentářů: 16
    13.5. 22:22 | Bezpečnostní upozornění

    Branch Privilege Injection (CVE-2024-45332, Paper) je nejnovější bezpečnostní problém procesorů Intel. Intel jej řeší ve včerejším opravném vydání 20250512 mikrokódů pro své procesory. Neprivilegovaný uživatel si například může přečíst /etc/shadow (YouTube).

    Ladislav Hagara | Komentářů: 2
    Jaký filesystém primárně používáte?
     (56%)
     (1%)
     (7%)
     (23%)
     (4%)
     (2%)
     (3%)
     (1%)
     (0%)
     (3%)
    Celkem 636 hlasů
     Komentářů: 27, poslední dnes 11:11
    Rozcestník

    Dotaz: BASH/SHELL - Dialog - Výstup

    11.7.2012 10:08 OoO
    BASH/SHELL - Dialog - Výstup
    Přečteno: 637×
    Zdravím, jak bych mohl udělat to, že když spustím pomocí dialogu nějaký příkaz, jeho průběh, výsledek atd.. aby se zobrazoval přímo v tom dialogu? Děkuji za radu. O.

    Odpovědi

    11.7.2012 10:44 Kit
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    for((i=0;i<100;i++)); do echo $i; sleep 0.2; done| dialog --gauge Hotovo 6 70
    11.7.2012 10:57 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    EH! ;-) Nemyslel jsem nějaký ukazatel, ale spíš to co se píše přímo na screen aby se zobrazovalo v tom dialogu.. Děkuji
    11.7.2012 11:24 Kit
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Z dotazu mí to jasné nebylo a ani teď mi to jasné není.
    for((i=0;i<100;i++)); do echo $i;sleep 0.2;done|dialog --progressbox 16 80
    11.7.2012 11:53 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Nemůžu to spustit, tak nevím jestli je to co myslím..
    ./test: 3: Syntax error: Bad for loop variable
    Nevíš co se mu nelíbí?
    11.7.2012 12:25 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Měl jsem chybu v #!/bin/sh, mělo tam být #!/bin/bash, už to jede.

    Ano, tohle by mohlo být použitelné, jenže to nefunguje vždy. Uvedu příklad:
    tohle funguje
    /etc/init.d/apache2 status | dialog --progressbox 16 80
    
    tohle treba nefunguje (adresar folder jiz existuje)
    mkdir /root/folder | dialog --progressbox 16 80
    mělo by to vypsat ze již existuje, ale nevypise nic
    Jak to prosim tedy je? Dekuji
    Ruža Becelin avatar 11.7.2012 12:38 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Pouzij parametr -v pro mkdir
    11.7.2012 12:48 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    S parametem -v
    mkdir -v /root/aaa
    je to stejný
    Ruža Becelin avatar 11.7.2012 12:51 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    A dival ses do pavlixova odkazu?
    mkdir -v /root/aaa 2>&1 | dialog --progressbox
    11.7.2012 12:58 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Ano, dival, pokud pouziju 2>&1 tak nemusim pouzit ani ten prepinac -v
    Ruža Becelin avatar 11.7.2012 13:21 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Ten -v je tam proto, aby vypsal vysledek i kdyz adresar neexistuje...
    11.7.2012 15:53 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Ty vogo OoO vo-co ti de? — já to nechápu. :-)
    O toto:
    (mkdir -v /root/aaa || ls -ld /root/aaa || rmdir -v /root/aaa)  2>&1 | dialog --progressbox 16 80
    případně:
    (mkdir -v /root/aaa && ls -ld /root/aaa && rmdir -v /root/aaa)  2>&1 | dialog --progressbox 16 80
    ?
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    11.7.2012 16:03 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Hm, raději:
    (mkdir -v /root/aaa ; ls -vld /root/aaa ; rmdir -v /root/aaa)  2>&1 | dialog --progressbox 16 80
    ?
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 11.7.2012 12:39 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Viz například http://www.linuxexpres.cz/praxe/bash-6-dil
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 12:54 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Tam ale není odpově%d na moji otázku, uvedu raději příklad
         VALUE=$(dialog --stdout --menu "MENU" 50 160 50\
              "1" "Test-1"\
              "2" "Test-2")
    
         case $VALUE in
              1) /etc/init.d/apache2 restart | dialog --progressbox 16 80;;
              2) mkdir /root/aaa | dialog --progressbox 16 80;;
         esac
    1) spustim program
    2) zvolím treba polozku Test-1 a spustim ji
    3) spustí se přikaz : /etc/init.d/apache2 restart | dialog --progressbox 16 80;;
    4) po provedeni se program se ukončí, a to je muj problem, potrebuji aby ta nabidka "MENU" byla zase videt po 
    provedeni toho prikazu v kroku 3, jelikoz potrebuji aby kurzor zustal na te polozce na ktere byl nez se neco spustilo.
    Děkuji za pomoc
    pavlix avatar 11.7.2012 13:00 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Ten program dělá přesně to, co je tam napsáno. Spustí dialog, uloží jeho výsledek, něco na základě toho provede, stdout z toho pošle tomu progressbaru a ten podle manuálové stránky při ukončení vstupu skončí.

    A protože dál už nemáš nic napsáno, tak se tvůj skript ukončí.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 13:07 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Ano, proto jsem se ptal jak to udělat :(
    mess avatar 12.7.2012 01:19 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Tak tam dej goto zpátky na začátek ;-)
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    pavlix avatar 12.7.2012 18:21 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Možná když uděláš maximum sám pro to, aby ti to fungovalo podle tvých představ a pak se budeš ptát na zcela konkrétní věci, klidně i z citací z toho manuálu, co konkrétně se ti nezdá nebo ti chybí, tak budeš mít větší šanci se něco dozvědět. Takhle to fakt vypadá jako když tomu nevěnuješ dost vlastní snahy.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 11.7.2012 13:01 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Doporučuju velmi pečlivě přečíst manuál k programu dialog.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 13:09 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Bohužel v manuálu není ani řádka o nějakém nastavení kurzoru a jeho pozice, tak že jsem tam kde jsem byl než jsem položil dotaz.. ;)
    pavlix avatar 11.7.2012 14:00 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Jednu věc pro tebe udělat můžu. Přeju ti hodně štěstí :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 14:06 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Naštěstí jsou tady i lidi co poradit dokážou, to ovšem není tvůj případ, akorát tady spamuješ blbečku..
    pavlix avatar 11.7.2012 14:18 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Je mi tě líto.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 14:29 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup

    To nemusí, já svůj problém dříve či později vyřeším, ale ty budeš ve fórech i nadále rozdávat (na úkor své reklamy) rady které nikdy nikomu nepomůžou a odkazovat na manuál, i když ani vlastně to ne, jelikož jsi žádný link kde to je napsáno neuvedl.

    BTW: Za toho "blbečka" se omlouvám, ruce byli v dané chvíli emočně rychlejší...

    pavlix avatar 11.7.2012 14:32 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    To nemusí, já svůj problém dříve či později vyřeším, ale ty budeš ve fórech i nadále rozdávat (na úkor své reklamy) rady které nikdy nikomu nepomůžou a odkazovat na manuál, i když ani vlastně to ne, jelikož jsi žádný link kde to je napsáno neuvedl.
    Soudíš nejen předčasně, ale i hloupě. Ale to koneckonců není můj problém. Pokud máš problém s tou patičkou, napiš Lubošovi, na jeho návrh ji změním.
    BTW: Za toho "blbečka" se omlouvám, ruce byli v dané chvíli emočně rychlejší...
    Omluva se přijímá.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 14:39 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Soudíš nejen předčasně, ale i hloupě.
    Patrně ano, proto jsem se dostal sem..
    Pokud máš problém s tou patičkou, napiš Lubošovi, na jeho návrh ji změním.
    Vlk taky sliboval.. Dělej si propagaci dál, je mi to fuk.
    Omluva se přijímá.
    Tak aspoň něco.. ;)
    pavlix avatar 11.7.2012 14:45 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Vlk taky sliboval.. Dělej si propagaci dál, je mi to fuk.
    Tak se do mě neser, když je ti to fuk :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 14:03 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Tak nikdo nic? Klasika, vždycky někdo zasere celé vlákno debilníma radama přečti si manuál atd.. a pak tu tunu balastu ani nikdo nečte a tím pádem ani neodpoví :-( Eh hlavě že si dělá reklamu na placené školení....
    pavlix avatar 11.7.2012 14:24 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    To zase přišel jeden hlupák, který si myslí, že bezplatná poradna na Abclinuxu je tu od toho, aby lidi, kteří něco málo umí, za něj četli manuály a vůbec za něj udělali většinu práce.

    On pak udělá copy&paste a jde ze sebe dělat těžkého kinga, přitom má problémy už i se čtením.

    Doma taky nadáváš do blbečků, když maminka k večeři neuvaří to, co sis ráčil objednat?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 14:33 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Ano, jsem hlupák, nedokážu v manuálu ani najít to co tam není...
    pavlix avatar 11.7.2012 14:40 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Myslím, že jsi svým přístupem značně snížil pravděpodobnost, že ti někdo poradí ke tvé spokojenosti.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    11.7.2012 14:48 OoO
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    S tím jediným s tebou souhlasím, aspoň se teď můžeš radovat, že jsem v p*deli :-(

    PS: Prosím o smazání celého vlákna, nenese čtenářům jedinou užitečnou informaci, díky.

    pavlix avatar 11.7.2012 22:28 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    S tím jediným s tebou souhlasím, aspoň se teď můžeš radovat, že jsem v p*deli :-(
    Budeme slavit! Ne, takhle to opravdu nefunguje, já naopak doufám, že na to časem přijdeš.
    PS: Prosím o smazání celého vlákna, nenese čtenářům jedinou užitečnou informaci, díky.
    Tady se vlákna nemažou, ale vyhnívají a upadají v zapomnění. Jako anonymovi ti to pak může být jedno.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    12.7.2012 09:52 pavel
    Rozbalit Rozbalit vše Re: BASH/SHELL - Dialog - Výstup
    Je to odtud:
    #!/bin/bash
    # utilitymenu.sh - A sample shell script to display menus on screen
    # Store menu options selected by the user
    INPUT=/tmp/menu.sh.$$
     
    # Storage file for displaying cal and date command output
    OUTPUT=/tmp/output.sh.$$
     
    # get text editor or fall back to vi_editor
    vi_editor=${EDITOR-vi}
     
    # trap and delete temp files
    trap "rm $OUTPUT; rm $INPUT; exit" SIGHUP SIGINT SIGTERM
     
    #
    # Purpose - display output using msgbox 
    #  $1 -> set msgbox height
    #  $2 -> set msgbox width
    #  $3 -> set msgbox title
    #
    function display_output(){
    	local h=${1-10}			# box height default 10
    	local w=${2-41} 		# box width default 41
    	local t=${3-Output} 	# box title 
    	dialog --backtitle "Linux Shell Script Tutorial" --title "${t}" --clear --msgbox "$(<$OUTPUT)" ${h} ${w}
    }
    #
    # Purpose - display current system date & time
    #
    function show_date(){
    	echo "Today is $(date) @ $(hostname -f)." >$OUTPUT
        display_output 6 60 "Date and Time"
    }
    #
    # Purpose - display a calendar
    #
    function show_calendar(){
    	cal >$OUTPUT
    	display_output 13 25 "Calendar"
    }
    #
    # set infinite loop
    #
    while true
    do
     
    ### display main menu ###
    dialog --clear  --help-button --backtitle "Linux Shell Script Tutorial" \
    --title "[ M A I N - M E N U ]" \
    --menu "You can use the UP/DOWN arrow keys, the first \n\
    letter of the choice as a hot key, or the \n\
    number keys 1-9 to choose an option.\n\
    Choose the TASK" 15 50 4 \
    Date/time "Displays date and time" \
    Calendar "Displays a calendar" \
    Editor "Start a text editor" \
    Exit "Exit to the shell" 2>"${INPUT}"
     
    menuitem=$(<"${INPUT}")
     
     
    # make decsion 
    case $menuitem in
    	Date/time) show_date;;
    	Calendar) show_calendar;;
    	Editor) $vi_editor;;
    	Exit) echo "Bye"; break;;
    esac
     
    done
     
    # if temp files found, delete em
    [ -f $OUTPUT ] && rm $OUTPUT
    [ -f $INPUT ] && rm $INPUT
    
    

    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.