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 12:33 | Komunita

    Alex Ellis upozornil 15. března, že firma Docker se chystala zrušit bezplatný hosting open-source projektů na Docker Hubu. Po vlně odporu se představitelé firmy omluvili a posléze byl původní záměr odvolán.

    Fluttershy, yay! | Komentářů: 3
    včera 07:00 | IT novinky

    Ve věku 94 let zemřel Gordon Moore, mj. spoluzakladatel společnosti Intel a autor Moorova zákona.

    Ladislav Hagara | Komentářů: 1
    24.3. 17:11 | Nová verze

    Mercurial (Wikipedie), software pro SCM (Source Code Management), byl vydán ve verzi 6.4. Přehled novinek v poznámkách k vydání. Ve dnech 5. až 7. dubna proběhne konference Mercurial Paris.

    Ladislav Hagara | Komentářů: 0
    24.3. 11:55 | IT novinky

    Byly rozdány Ceny Velkého bratra (Big Brother Awards) za rok 2022 pro největší slídily pořádané nevládní organizací Iuridicum Remedium. Dlouhodobý slídil: Microsoft. Firemní slídil: Seznam. Úřední slídil: Nejvyšší správní soud. Výrok Velkého bratra: Marian Jurečka. Pozitivní cena: NoLog.

    Ladislav Hagara | Komentářů: 10
    24.3. 11:11 | Zajímavý projekt

    Byla představena online vzdělávací platforma Ada Computer Science pro učitele, studenty a kohokoli, kdo se zajímá o informatiku. Stojí za ní Raspberry Pi Foundation a Univerzita v Cambridgi.

    Ladislav Hagara | Komentářů: 0
    24.3. 09:11 | Bezpečnostní upozornění

    GitHub má nový RSA SSH klíč. Předchozí soukromý klíč byl krátce vystaven na GitHubu.

    Ladislav Hagara | Komentářů: 0
    24.3. 08:55 | IT novinky

    Společnost Framework Computer představila (YouTube) nové modulární notebooky: Laptop 13 s Intel Core nebo AMD Ryzen a Laptop 16 (YouTube).

    Ladislav Hagara | Komentářů: 0
    23.3. 19:33 | Nová verze

    Bylo vydáno Ubuntu 20.04.6 LTS, tj. šesté opravné vydání Ubuntu 20.04 LTS s kódovým názvem Focal Fossa. Přehled novinek v poznámkách k vydání a v přehledu změn.

    Ladislav Hagara | Komentářů: 2
    23.3. 14:44 | IT novinky

    Připojit neznámý USB flash disk do počítače může být nebezpečné. Dokonce může jít i o život. Někdo rozeslal ekvádorským novinářům USB flash disky, které po připojení do počítače explodují [BBC, Twitter].

    Ladislav Hagara | Komentářů: 2
    23.3. 13:33 | Nová verze

    Byla vydána nová verze 7.4 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu.

    Ladislav Hagara | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 321 hlasů
     Komentářů: 4, poslední 24.3. 06:42
    Rozcestník


    Dotaz: Bash - vytvoření proměnné z "for"

    11.4.2006 08:40 Rover | skóre: 10
    Bash - vytvoření proměnné z "for"
    Přečteno: 256×
    Dobrý den,

    jde mi o odstranění mezer v proměnné $words a vložit výsledek do proměnné (do jedné proměnné -společné).
    
    
    words="  slovo1     slovo2 slovo3 "
    
    for i in $words
    do
    
        echo $i
    
    
    done
    
    
    
    
    Toto vyhodí do STOUT co řádek to jednotlivé slovo. 
    

    Já bych potřeboval aby po této části skriptu byly tyto "slova" uložena v proměnné. Prostě aby jsem dále ve skriptu mohl použít tyto slova za sebou (bez mezer). A nejlépe aby za každým slovem se dal přidat středník. Tj výsledek aby byl uložen v proměnné. slovo1; slovo2; slovo3

    Odpovědi

    11.4.2006 09:22 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    A co takhle?:
    user@stroj:~$ ls -1 test* | awk '{printf $1";"}'
    test3.svg;test4.svg;test.dia;test.eps;test.eps~;test.flw;test.flw~;test.karbon;test.karbon~;test.svg;test_z_ooo.w
    
    Jinými slovy
    user@stroj:~$ echo $word | awk ...
    11.4.2006 09:28 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    Sakra, blbě jsem se přehlídl.. V uvedeném případě by to mělo být spíš..
    echo $words | sed '{s/\ /;/g}'
    V případě že jde o soubor (nebo výpis), v němž jsou položky na jednotlivých řádcích:
    user@stroj:~$ cat soubor.txt | awk ..
    11.4.2006 09:35 Rover | skóre: 10
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    To je přesně ono.... echo $words | sed '{s/\ /;/g}'

    Díky ... asi si to budu muset dopříště natlouci do hlavy :)
    Ondroid avatar 11.4.2006 09:47 Ondroid | skóre: 32 | blog: Hombre
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    man tr ;-)
    11.4.2006 10:00 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    A nnnebo táák.. ;-)
    11.4.2006 11:20 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    I s tím for a echo by to mělo jít (je potřeba pouze neodřádkovat každým echem) :
    # words=" slovo1 slovo2    slovo3"
    # for i in $words; { echo -n "$i; "; }; echo
    slovo1; slovo2; slovo3;
    
    11.4.2006 11:40 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    res=""
    for i in $words; do
        res="$res;$i"
    done
    
    echo "$res"
    
    poradit si s koncovou ";" si uz asi dokazes
    If you hold a Unix shell up to your ear, you can you hear the C.
    11.4.2006 11:41 Dunric | skóre: 21
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    Jde to i čistě jen v bashi:
    cswords=${words## }
    cswords=${cswords%% }
    cswords=${cswords// /;}
    echo \"$cswords\"
    
    In the garden sleeps a messenger ·
    11.4.2006 11:43 Dunric | skóre: 21
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    ... a bez cyklů ;-)
    In the garden sleeps a messenger ·
    11.4.2006 15:49 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Bash - vytvoření proměnné z "for"
    A vida! Řešení v čistém BASHi, přesně tak jak tazatel chtěl. Nicméně mluvilo se tady i o sedu a awku, tak já se sem vecpu ještě s pythonem, abych se necítil diskriminován ;-)
    words=" slovo1 slovo2 slovo3 "
    ';'.join(words.split())
    
    'slovo1;slovo2;slovo3'
    
    Akorátže v pythonu je lepší mít list než položky oddělený středníkama.

    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.