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 11:40 | Pozvánky
Program letošního ročníku konference Prague PostgreSQL Developer Days, která se koná již 15.-16.2. 2017 na ČVUT FIT, Thákurova 9, Praha 6, byl dnes zveřejněn. Najdete ho na stránkách konference včetně anotací přednášek a školení. Registrace na konferenci bude otevřena zítra (24.1.) v brzkých odpoledních hodinách.
TomasVondra | Komentářů: 0
včera 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

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

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
21.1. 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
21.1. 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 6
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 10
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (4%)
 (10%)
Celkem 367 hlasů
 Komentářů: 25, poslední 21.1. 13:34
Rozcestník
Reklama

Dotaz: Nefunkční script v shelu

8.11.2012 13:53 Ondrej
Nefunkční script v shelu
Přečteno: 190×
Zdravím, poradí/opraví někdo proč je u obou výstupů absolutně stejný výsledek? Děkuji vám
IFS=$'|'
ARR=(" Lorem        ipsum   dolor sit am  et   |  Risus urna     convallis est et  ")
PAR=( ${ARR[0]} )
PAR0=${PAR[0]}
PAR1=$( echo ${PAR0[0]} )
echo $PAR0
echo $PAR1

Odpovědi

8.11.2012 14:03 Kit
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Asi proto, že tam chybí uvozovky kolem proměnných.
8.11.2012 14:16 Ondrej
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
:-D aspoň sis to spustil?

..nějaká jiná rada?
8.11.2012 14:19 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
A důvod proč by neměl být stejný je jaký?
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
8.11.2012 14:25 Ondrej
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Řádek 5, PAR1=$( echo ${PAR0[0]} ) by měl odstranit mezery, což neudělá.
8.11.2012 14:32 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Přestavil jste IFS.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
8.11.2012 14:35 Ondrej
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Teď moc (vůbec) nerozumím... Můžete to upřesnit? Dík
8.11.2012 14:44 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Jukněte pozorně:
#!/bin/bash

OLDIFS=$IFS
IFS='|'
ARR=(" Lorem        ipsum   dolor sit am  et   |  Risus urna     convallis est et  ")
PAR=( ${ARR[0]} )
PAR0=${PAR[0]}
#remove next line change output
IFS=$OLDIFS
PAR1=$( echo ${PAR0[0]} )
IFS='|'
echo $PAR0
echo "\"$PAR0"
echo $PAR1
echo "\"$PAR1"
echo '----'
IFS=$OLDIFS
echo $PAR0
echo "\"$PAR0"
echo $PAR1
echo "\"$PAR1"
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
8.11.2012 15:09 Ondrej
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Hm, tak toto je už fakt ale moc... kašlu na celý programování v bashi. Můžete mi ale ještě prozradit jednu věc? Když nainstaluji nějaký server, přihlásím se poprvé do systému... co je nastaveno v proměnné $IFS? Dík

Jinak mnohokeré díky za vyčerpávající příklad!
8.11.2012 15:52 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
To jsem nechtěl způsobit, chtěl jsem jen ukázat, že na některých systémových proměnných jsou závislé některé funkce a zrovna od IFS se odvíjí spousta věcí (byť je to furt totéž, jen s různými důsledky), stejně tak například přestavení proměnné LANG může generovat jiný výstup z různých příkazů.
Nevím jestli je to nějak definované, ale <space>, <tab>, <newline>, zobrazit si to můžete třeba pomocí echo -n "$IFS" | od -abc.
Ale tak jak to bylo použito, se to přestavujete jen pro daný vykonávaný skript ne pro celý systém.
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
rADOn avatar 8.11.2012 16:42 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
IFS neni promenna systemu ale bashe. Defaultni hodnota jsou bily znaky (mezera, odradek, tabulator). Jinak s "programovanim" v shellu se to ma stejne jako s programovani ve vetsine vyssich jazyku – umet syntaxi je 1% uspechu, 99% je znalost prostredi. Napriklad, vedet co je lepsi delat v sedu a awku :-)
"2^24 comments ought to be enough for anyone" -- CmdrTaco
8.11.2012 15:11 Ondrej
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Ještě jedna věc, není tohle náhodou špatně?
IFS='|'
nemá to být náhodou takto?
IFS=$'|'
8.11.2012 15:32 chrono
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Keď ide o normálny znak, stačí ten tvar '|'. Ak by sa do IFS pridával napr. znak pre tabulátor, tak by sa tam použilo $'\t'.
8.11.2012 15:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Nefunkční script v shelu
Já mám stejně ale oblíbené:
IFS='
'
:-)
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

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.