abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    včera 23:22 | IT novinky

    Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.

    Ladislav Hagara | Komentářů: 2
    včera 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 16
    včera 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 25
    včera 13:33 | Komunita

    Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.

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

    Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 710 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Bash - spuštění více programů po sobě

    16.7.2007 11:17 Jirda | skóre: 4
    Bash - spuštění více programů po sobě
    Přečteno: 1079×
    Ahoj, potřebuji udělat jednoduchý skriptík, který mi spustí několik programů, ne však najednou, ale po sobě, tzn, po spuštění jednoho programu se teprve začne spouštět druhý atd. Zatím jsem se dopatral jen tomu, že se mi buď spouštějí všechny najednou, nebo se další program spustí až po ukončení právě spuštěného. Za každou radu díky

    Odpovědi

    16.7.2007 11:24 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Nějak nechápu.....

    No tak je spouštěj na pozadí, a pokud mezi nimi potřebuješ prodlevu tak tam dej příkaz na čekání.
    16.7.2007 11:34 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    A jak se pozná, že se program nastartoval? To je nějak definovaný stav?
    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é.
    16.7.2007 11:45 Jirda | skóre: 4
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Me jde o to, aby se mi ty programy spouštěli prostě v určitém pořadí a ne aby mi disk bláznil, lítal sem tam, a spouštěl vše najednou. Možná pomůže ta prodleva, ale myslel jsem, jestli třeba spuštěný program nepošle nějaký, "jsem ready", a po tomto signálu by se mohl začít spouštět další.
    16.7.2007 11:59 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    A co to má společného s diskem ?

    Prostě ať ty programy budeš spouštět zaráz nebo postupně tak je to úplně jedno pokud ty programy nezávisí na sobě.

    Linux nejsou windows a to že běží disk a bliká je taky jedno, bude blikat pořád ať ty programy spustíš jak chceš, pokud ten program potřebuje HD tak z něho bude číst ať se děje co chce....

    Podle mě máš problém někde jinde - nedostatečný HW a pokud chceš omezit přístup na HD pořiď více ram aby se potom použila jako cache pro HD pokud máš náročné aplikace pracující s HD. (Případně použít rychlejší řadič HD, rychlejší HD atd.....)
    16.7.2007 12:23 Jirda | skóre: 4
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    HW myslím že mám dostatečně výkonný. S diskem to má společné to, že když se mi ty programy spustí v návaznosti těsně po sobě, nebude tolik seekovat a ve vysledku se to spustí rychleji. Já nevím co je na tom tak nepochopitelného. I kdyby ten důvod byl jakýkoliv, tak jsem chtěl jen vědět, jestli někdo nezná způsob jak pustit ty programy v určitém pořadí těsně po sobě. Možná se blbě ptám, možná si vymýšlím nesmysly a možné to není, nebo proste zatím nikdo nezná odpověď ...
    16.7.2007 12:40 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    HW myslím že mám dostatečně výkonný. S diskem to má společné to, že když se mi ty programy spustí v návaznosti těsně po sobě, nebude tolik seekovat a ve vysledku se to spustí rychleji...
    A na to jsi přišel jak? To si jenom myslíš, že? Ono myslet, znamená ho..o vědě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é.
    16.7.2007 13:35 chroust
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Takové odpovědi bych očekával nejspíš tak někde na zive.cz, kam se stahují (nebo aspoň stahovali, už jsem tam dávno nebyl, tak abych nekřivdil) různí narušení jedinci.

    Z obsahové hlediska je hodnota nulová, byť bystřejší čtenář asi pochopí, že s uvedeným tvrzením nesouhlasíš. Z hlediska komunikace jde o napadení - byť se to přímo nepíše, bystřejší čtenář opět pochopí, že tazatel je blbec. Takže co jsme se vlastně dozvěděli? Že "myslet, znamená ho..o vědět", což je velmi otřepané rčení, které každý zná a může být "zajímavé" snad jen svojí lehkou vulgaritou. Bystřejší čtenář pak může ještě usoudit, že autor příspěvku nemá dnes co dělat a hojí své frustrace na diskusním fóru.

    Osobně si rovněž nemyslím, že by uvedené tvrzení bylo pravdivé, pokud bych však měl potřebu se k němu vyjadřovat, snažil bych se to udělat slušně a argumentovat. Například tím, že nevíme ani které soubory se při spuštění budou číst, natož kde jsou uloženy na disku nebo jaká je strategie uspokojování diskových požadavků na úrovni OS a samotného disku, což je pro výkonnost paralelního čtení zásadní. Jistě však může existovat i specifická situace, v níž bude při uvedeném postupu možné sledovat zlepšení výkonu, není to však příliš pravděpodobné a nelze takové pozorování zobecňovat.
    16.7.2007 12:57 chroust
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Předpokládám, že programy mají běžet současně a jako problém se ti jeví úvodní část jejich běhu, ukončená například naběhnutím hlavního okna v případě GUI aplikace, zahájením akceptování spojení serverem apod. OS přechod do takového stav neidentifikuje a ani nemůže, neboť jde o vnitřní stav aplikace. Nevylučuji, že desktopové prostředí (např. KDE), umožňuje navázat nějakou akci na zobrazení prvního okna aplikace, ale nevím o tom a dost o tom pochybuji. Jiná věc je, že můžes napsat program, který to bude pro konkrétní aplikaci nějak konkrétně zjišťovat a pro takovou diagnostiku ho používat. Spuštění těsně po sobě je to co děláš teď a je dáno pořadím spouštěcích příkazů ve skriptu. Pokud by konkrétní aplikace např. posílala signál, že už má vykreslené okno, načtené konfigurační soubory apod., můžeš si na něj počkat - aplikace by však musela něco takového podporovat. Pokud bych se vůbec chtěl tímto zabývat, zvolil bych metodu uspání skriptu na nějakou dobu před spuštěním dalšího programu. Může to však být neefektivní, pokud už jsou některé knihovny v paměti, soubory v diskové cachi apod. a čekat budeš zbytečně. Ve specifických případech snad můžes pozorovat zrychlení, ale v průměru nemůžes tímto způsobem dosáhnout lepšího výsledku než OS.
    16.7.2007 13:05 Jirda | skóre: 4
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Předpokládám, že programy mají běžet současně a jako problém se ti jeví úvodní část jejich běhu, ukončená například naběhnutím hlavního okna v případě GUI aplikace, zahájením akceptování spojení serverem apod. OS přechod do takového stav neidentifikuje a ani nemůže, neboť jde o vnitřní stav aplikace.
    Konečně mě někdo pochopil a nehledal v mé otázce, do čeho si rýpnout. Díky, tahle odpověď mi stačí
    16.7.2007 13:35 Martin Beránek | skóre: 33 | blog: mousehouse | Brno
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Konečně mě někdo pochopil a nehledal v mé otázce, do čeho si rýpnout.
    a ty, co se vám snažily naznačit, že paralelní přístup k disku by měl řídit plánovač IO, jste nepochopil vy
    never use rm after eight
    16.7.2007 12:25 ikarlos | skóre: 8
    Rozbalit Rozbalit vše tohle nefunguje?
    prvy;druhy;treti
    wolf09 avatar 16.7.2007 12:49 wolf09 | skóre: 30
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    nebo jeste lepe prikaz1 && prikaz2 && prikaz3

    v tomto pripade se prikaz2 spusti pouze v pripade , ze prikaz1 ma 0 navratovy kod.

    Nezapomente, ze pokud to pisete na windows, tak je nutno opravit konce radku pomoci dos2unix !
    Zkusili jste to vypnout a znovu zapnout ?
    honzous avatar 16.7.2007 13:01 honzous | skóre: 17 | blog: /var/log/honzous.log
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    Rozhodne &&. A kdyz jim chces dat oddech, tak tam nasazel sleepy :-)
    Nevykej mi, ja ti taky nebudu vykat...↵ Mar 13 11:53:32 nevykat last message repeated 2324661 times
    16.7.2007 13:07 Jirda | skóre: 4
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    To jo, ale další aplikace se mi spustí až poté, co ukončím tu předchozí ...
    16.7.2007 13:16 Jirda | skóre: 4
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    Omlouvám se za předchozí příspěvek, samozřejmě že se program nespustí po ukončení předchozího ... Ale && nepomůže, jak jsem psal, jedná se o programy a ne příkazy ...
    honzous avatar 16.7.2007 13:18 honzous | skóre: 17 | blog: /var/log/honzous.log
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    Aha, tak v tom pripade o jedno & mene :-) Nejak jsem to z uvodniho dotazu nepochopil. Jinak pokud bys to chtel uplne presne nadefinovat, ze az se "dokonci spousteni" tehle aplikace, tak "zacni spoustet" dalsi, tak na to me zadne reseni nenapada. Jedine to spoustet s nejakym stracem s vystupem "nekam", a ted vystup checkovat, jestli se porad zvetsuje, nebo uz ma stabilni velikost. Doufam, ze jsem to napsal srozumitelne.
    Nevykej mi, ja ti taky nebudu vykat...↵ Mar 13 11:53:32 nevykat last message repeated 2324661 times
    16.7.2007 13:27 Jirda | skóre: 4
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    JJ, tak jsem to přesně myslel, ale docílit toho je zřejmě pro mě složité, jestli je to vůbec možné
    honzous avatar 16.7.2007 13:34 honzous | skóre: 17 | blog: /var/log/honzous.log
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    Urcite je to resitelne. Ale je treba si rict, zda to, co chces vyresit, je natolik dulezite, ze pro to budes obetovat nemaly casovy usek uceni a premysleni :-) Jestli jo, tak man strace :-)
    Nevykej mi, ja ti taky nebudu vykat...↵ Mar 13 11:53:32 nevykat last message repeated 2324661 times
    stativ avatar 16.7.2007 13:46 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: tohle nefunguje?

    stracem to nepůjde, protože to by se proces programu musel okamžitě uspat, aby strace už nic nevypisoval. Stačí jediný pohyb paměti a tenhle způsob půjde do háje. Zelenýho.

    Popravdě mě přijde celý dotaz jako naprostá kravina. Prostě použij ; (a když už, tak i nějaký sleep). Jinou možnost ani nemáš, protože jak už tu někdo psal by program musel posílat nějaký signál, že už je spuštěný. A to že to zrovna tyhle programy budou dělat je hoodně nepravděpodobné.

    Pocit, že se programy takhle spustí rychleji je podle mně zcela mimo. Hlavičky hard disku musí tu cesto projít stejně v každém případě. Fragmentace souborů v systému bude přítomná vždy a lítání hlav tedy taky. Máš tedy v podstatě na výběr jestli hlavičky budou překmitávat rychle nebo pomalu (a to takřka stejným způsobem). To že to dělá větší kravál opravdu neznamená, že je to pomalejší.
    Samozřejmě existuje teoretická možnost, že tvůj způsob bude rychlejší. A to v případě, že všechna data budou uložená na disku za sebou přesně v tom pořadí, v jakém se čtou (včetně všech knihoven). S tím se prakticky nesetkáte (existuje patch pro kernel, který dělá něco takového, ale jen po dobu bootu). Ovšem to by se program musel začít spouštět okamžitě po načtení dat předchozího (tedy i před jeho kompletním spuštěním) aby se hlavičky nestihly zaparkovat nebo tak něco.


    PS: Navíc firmware disku si může dělat co chce, takže na OS bych v tomhle zrovna moc nespoléhal.

    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    16.7.2007 13:53 alesek
    Rozbalit Rozbalit vše Re: tohle nefunguje?
    To je imho dost ulitly napad, je potreba vzit v uvahu rezii samotneho strace, ktera libovolnou usporu ziskanou odlozenim spousteni spolehlive vynuluje. A pak taky vypovidaci hodnotu ziskaneho vypisu. Aplikace po tom co "nabehne" uz nedela syscally? No nejaka mozna ne, nebo ne hned, ale je to individualni a musi se to vysledovat na konkretni aplikaci a jeji konkretni verzi atd. Pokud bych se uz mel ubirat cestou podobnych heuristik, sledoval bych spis standardnim zpusobem informace o behu procesu (napr. alokovana pamet). Rozhodne neni zadny obecny zpusob a musi se to resit na urovni konkretni aplikace - pak je ovsem v OSS prostredi nejlepsi upravit zdrojak tak aby aplikace treba ve spravnou chvili vypsala na chybovy vystup "hotovo". Cele je to ale podle mne zbytecna snaha.
    16.7.2007 13:58 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Dalo by se to obejít tím, že bys číhal, až se disk uklidní a pak teprve pouštěl další program. To by šlo udělat třeba takhle:
    #!/usr/bin/python
    from __future__ import division
    import time
    
    def sumsys_iowait():
        statline = file('/proc/stat').readline().split()[1:8]
        ints = [int(x) for x in statline]
        sumsys = sum(ints)
        iowait = ints[4] #IOWAIT
        return sumsys, iowait
    
    s_old, i_old = sumsys_iowait()
    while True:
        time.sleep(0.2)
        s, i = sumsys_iowait()
        iowait = (i-i_old)/(s-s_old)
        print iowait
        if iowait > 0.5:
            break
        s_old = s
        i_old = i
    
    Schválně jsem obrátil podmínku a nastavil, ať program skončí až se aktivita disku _zvýší_ nad 0.5 - ať je to zajímavější. Pětkrát za sekundu kontroluju IOWAIT což většinou odpovídá aktivitě disku (ale nemusí).
    Ale jsem přesvědčen, že to k žádnému zlepšení nepovede. Vyzkoušej a uvidíš.
    16.7.2007 16:44 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash - spuštění více programů po sobě
    Bud cez sledovanie iowait programcekom vyssie, alebo grepovat po 1. vyskyt charakteristickeho retazca vo vystupe z strace. Ten retazec ale treba rucne zistit, aby jeho prvy vyskyt odpovedal "nabehnutemu" programu.
    If you hold a Unix shell up to your ear, you can you hear the C.

    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.