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 05:00 | Nová verze

    Byla vydána verze 1.98.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

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

    Byla vydána nová verze 7.1 (YouTube) svobodného open source redakčního systému WordPress. Kódové jméno Mary Lou bylo vybráno na počest americké jazzové klavíristky Mary Lou Williams (YouTube).

    Ladislav Hagara | Komentářů: 0
    20.8. 19:11 | Nová verze

    Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.4. Představení novinek také na YouTube. Bun byl přepsán z programovacího jazyka Zig do Rustu. Pomocí Claude Fable 5.

    Ladislav Hagara | Komentářů: 0
    20.8. 12:33 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    20.8. 04:11 | IT novinky

    Společnost PINE64 kvůli nedostatku a vysokým cenám DRAM a eMMC dočasně pozastavuje výrobu linuxových zařízení. Výroba zařízení jako PineTime, PineVoice a Pinecil pokračuje.

    Ladislav Hagara | Komentářů: 0
    20.8. 02:55 | IT novinky

    Společnost Stripe se dohodla na akvizici společnosti OpenRouter. Za 7,5 miliardy dolarů.

    Ladislav Hagara | Komentářů: 0
    20.8. 01:33 | Nová verze

    Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    19.8. 16:00 | Pozvánky

    V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede Petr Hodina, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem mobilního … více »

    lkocman | Komentářů: 0
    19.8. 14:11 | IT novinky

    Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.

    Ladislav Hagara | Komentářů: 5
    19.8. 05:55 | IT novinky

    Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o

    … více »
    Ladislav Hagara | Komentářů: 23
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2455 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: Jak na pevnou šířku v bashi

    7.8.2012 19:19 MM
    Jak na pevnou šířku v bashi
    Přečteno: 545×
    Jak můžu docílit něčeho takového?

    funkce která má pevnou šířku
    function prints {
     echo -en "[ $1                                                                ]"
    }
    mám texty o různých delkách
    prints "dasdsadas  sa a asd as dasd a d"
    výstup z příkazu
    prints "dasad a dd aadasd a d"
    výstup z příkazu
    prints "dasassasd a dadddd asdaasd a asasd f fdxgh dhdfghadasd a d"
    výstup z příkazu
    a výsledek je pak
    [ dasdsadas  sa a asd as dasd a d                                   ]
    výstup z příkazu
    [ dasad a dd aadasd a d                                             ]
    výstup z příkazu
    [ dasassasd a dadddd asdaasd a asasd f fdxgh dhdfghadasd a d        ]
    výstup z příkazu
    jenže následující text je na novém řádku a ne na konci, poztřebuji to takto, poradí někdo? Pokud to jde tak mimo použití cyklů s počítáním znaků a doplnováním mezer. ;-) Díky
    [ dasdsadas  sa a asd as dasd a d                                   ] výstup z příkazu
    [ dasad a dd aadasd a d                                             ] výstup z příkazu
    [ dasassasd a dadddd asdaasd a asasd f fdxgh dhdfghadasd a d        ] výstup z příkazu
    

    Řešení dotazu:


    Odpovědi

    7.8.2012 19:24 Sten
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    man console_codes sekce ECMA-48 CSI sequences
    7.8.2012 19:25 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    printf
    7.8.2012 19:29 Kit
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Použij program printf.
    printf "[ %-60s ] " "dasad a dd aadasd a d"
    7.8.2012 19:47 MM
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Nemůžu použít printf :-( výpisy jsou barevně označené, což mi printf neoumožní...
    7.8.2012 19:56 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Proč ne? Cokoli protlačíte přes echo, protlačíte i přes printf (a často snáze).
    7.8.2012 20:00 MM
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi

    Aha, to mi nějak ušlo, vím, že jsem to kdysi zkoušel ale nešlo to.. tak to je fajn ;-)

    7.8.2012 19:58 Kit
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    To si děláš srandu nebo s ním prostě neumíš?
    7.8.2012 20:01 MM
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    nn, fakt mi to nešlo, ale jak to myslíš s tím číslem uvnitř? To si pro každý řádek nastavit podle počtu znaků v řetězci vypočítat jiné?
    7.8.2012 20:05 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Chcete-li něco zarovnat na pevnou šířku, tak musíte vědět na jakou. Nebo si očekáváte, že příkaz nějakou černou magií nastaví šířku podle parametrů následujících příkazů (které se ještě neprováděly)?
    7.8.2012 20:10 MM
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Ale to není vůbec pravda co píšete... navíc nevím co s tím mám společného nějaký příkaz ;-)
    7.8.2012 20:13 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Tak podle čeho by se podle vás ta šířka měla určit, pokud ji nechcete zadat?
    7.8.2012 20:23 MM
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Podle ničeho, třeba takto, pokud naplníte proměnnou AAA čímkoliv kratším než je první řádek s echem tak bude vždy znak "]" zarovnaný vpravo a nikde nic nepočítám ... jenže potřebujiá nasledujiící řádek vypsat za ten znak "]" a ne na nový řádek, nehledejme v tom nic slozitého ;)
    AAA="aaa sd d ada dad adadsas"
    
    echo -en "\r                                                                   ]"
    echo -e "\r[ $AAA"
    7.8.2012 20:33 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Začínám mít temné podezření, že jste se neobtěžoval si ani přečíst, co ten příkaz dělá, ale dokonce si to ani vyzkoušet.
    7.8.2012 21:56 MM
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Ale obtěžoval, ale je to nepoužitelný, jelikož to vyhodnocuje jinak znaky s diakritikou jak bez ní :-( Což moc nechápu ale je to tak..
    8.8.2012 01:43 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi

    Hm, zdá se, že printf ignoruje locales. V tom případě třeba nějak takhle:

    function align
    {
        local s="$1"
        local w="$2"
    
        if [ "${#1}" -le "$w" ]; then
            printf "%s%*s" "$s" $[w-${#s}] ""
        else
            echo -n "${s:0:$w}"
        fi
    }
    

    Příště zkuste psát své příspěvky trochu srozumitelněji a hlavně konkrétněji. Z věty

    To si pro každý řádek nastavit podle počtu znaků v řetězci vypočítat jiné?

    by asi jen velmi zkušený jasnovidec poznal, že máte na mysli problémy se zarovnáním na předepsanou šířku, pokud řetězec obsahuje znaky s diakritikou…

    8.8.2012 11:50 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Jsi dobrej, já vůbec nepochopil o co mu jde, myslel jsem, že o to, aby "výstup z příkazu" nebyl na novém řádku. A to by býval byl stejně nebyl. Přestože ve svém dotazu to tvrdí a označuje za problém k řešení. To s tou pevnou šířkou jsem naopak myslel, že má vyřešené, když říká "výstup vypadá takto (zarovnáno), ale já potřebuji..." :)
    8.8.2012 12:46 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    No, já to taky pochopil až z toho příspěvku z 21:56, do té doby jsem měl jen několik divokých teorií. Tahle mezi nimi nebyla…
    8.8.2012 20:20 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Jak na pevnou šířku v bashi
    Hm, zdá se, že printf ignoruje locales.

    To je vlastnost printf(3):

    • An optional minimum field width. If the converted value has fewer bytes than the field width, …

    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.