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 13:33 | Pozvánky

Byly stanoveny termíny konferencí LinuxDays 2017 a OpenAlt 2017. Letošní LinuxDays proběhne o víkendu 7. a 8. října v Praze v Dejvicích v prostorách FIT ČVUT. Letošní OpenAlt proběhne o víkendu 4. a 5. listopadu na FIT VUT v Brně.

Ladislav Hagara | Komentářů: 0
dnes 11:11 | Komunita

Jiří Eischmann z desktopového týmu Red Hatu se v příspěvku Linuxový desktop: Co vám chybí na svém blogu ptá, co uživatele na Fedora Workstation a na linuxovém desktopu obecně trápí a co by desktopový tým mohl zlepšit. Pokud máte nějaké podněty, napište mu je do komentářů.

Ladislav Hagara | Komentářů: 28
dnes 03:33 | Nová verze

Byla vydána nová verze 0.25.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Z novinek lze zmínit například podporu DVB-T2. Další části mpv byly přelicencovány z GPLv2 nebo novější na LGPLv2.1 nebo novější (#2033).

Ladislav Hagara | Komentářů: 0
dnes 02:22 | Zajímavý projekt

Na Bundle Stars byla spuštěna akce Dollar Forever Bundle. Za 1 dolar lze získat 24 počítačových her bežících na platformě Steam také v Linuxu.

Ladislav Hagara | Komentářů: 1
včera 23:44 | Zajímavý software

Lychee je jedním z open source softwarů pro tvorbu webových fotoalb. Vyžadováno je PHP 5.5 nebo novější a MySQL. Ukázka na stránkách projektu. Zdrojové kódy jsou k dispozici na GitHubu pod open source licencí MIT [reddit].

Ladislav Hagara | Komentářů: 5
včera 22:22 | Zajímavý software

Společnosti Haivision a Wowza společně oznámily vznik SRT Alliance a otevření protokolu pro streamování videa SRT. Podrobnosti v FAQ. Zdrojové kódy SRT jsou k dispozici na GitHubu pod open source licencí LGPLv2.1.

Ladislav Hagara | Komentářů: 0
včera 12:33 | Humor

Byl vydán remake filmu Ghost in the Shell. Tentokrát v Bashi. Zhlédnout lze online na "ssh ghost@theshell.xyz" [Hacker News].

Ladislav Hagara | Komentářů: 16
23.4. 20:40 | Zajímavý článek

Lukáš Růžička v článku S Hydrogenem za lepší rytmus aneb bubeníkem snadno a rychle na MojeFedora.cz představuje automatického bubeníka s názvem Hydrogen (Wikipedie): Hydrogen je velmi vydařený program, který rozhodně nesmí chybět ve výbavě žádného linuxového muzikanta. Umožňuje nejen vytváření jednoduchých bicích doprovodů, ale také sofistikované programování bicích a perkusí, jehož výsledek se naprosto vyrovná drahým

… více »
Ladislav Hagara | Komentářů: 16
23.4. 13:55 | Zajímavý projekt

UPSat (Twitter) je první open source nanodružice (CubeSat). Jedná se o společný projekt nadace Libre Space Foundation a University of Patras. Repozitáře projektu jsou k dispozici na GitHubu. Pod Libre Space Foundation patří také projekt SatNOGS (zprávička), projekt globální sítě open source pozemních satelitních stanic, vítězný projekt soutěže The Hackaday Prize 2014. UPSat je součástí mise QB50 (Twitter). ID UPSatu je GR02. GPS přijímač na UPSatu je od české společnosti SkyFox Labs. Součástí mise QB50 je i česká nanodružice VZLUSAT-1 s ID CZ02.

Ladislav Hagara | Komentářů: 5
21.4. 15:00 | Komunita

V diskusním listu Thunderbird planning vývojáři poštovního klienta Thunderbird řeší, zda by nebylo možné budoucí Thunderbird postavit nad webovými technologiemi, tj. nad Electronem, stejně jako například Nylas Mail. Gecko, nad kterým je Thunderbird postaven, se má hodně změnit. V plánu je odstranění vlastností, které Firefox už nepotřebuje, ale Thunderbird je na nich závislý [Hacker News, reddit].

Ladislav Hagara | Komentářů: 100
Chystáte se pořídit CPU AMD Ryzen?
 (4%)
 (34%)
 (0%)
 (7%)
 (45%)
 (9%)
Celkem 297 hlasů
 Komentářů: 32, poslední včera 12:24
    Rozcestník

    Dotaz: Nefunguje for loop v bourne shell

    27.5.2016 20:22 majales | skóre: 20 | blog: Majales
    Nefunguje for loop v bourne shell
    Přečteno: 318×
    Zdravím, Mám problém s jedním skriptem kterým klonuju VM na ESXi. Nefunguje tam správně for smyčka, pokud má stroj více než jeden disk.
    VM_VMDK_DESCRS=$(ls "$OLDVMSTORE/$OLDVM" | grep ".vmdk" | grep -v "\-flat.vmdk")
    for VMDK in "${VM_VMDK_DESCRS}"
    do
      echo "Cloning VMDK : $VMDK"
      NEWVMDK=$(echo ${VMDK##*/} | sed "s/$OLDVM/$NEWVM/")
      vmkfstools -i "$OLDVMSTORE/$OLDVM/$VMDK" "$NEWVMSTORE/$NEWVM/$NEWVMDK" -d thin
      echo
    
    skript selže protože v té smyčce se mu objeví oba ty nalezené disky
    ls /vmfs/volumes/datastore1/DSMON01 |grep ".vmdk" | gr
    ep -v "\-flat.vmdk" | hexdump -C
    00000000  44 53 4d 4f 4e 30 31 2e  76 6d 64 6b 0a 44 53 4d  |DSMON01.vmdk.DSM|
    00000010  4f 4e 30 31 5f 31 2e 76  6d 64 6b 0a              |ON01_1.vmdk.|
    
    Přičemž separátor je tady 0a což by měl být linefeed.

    Nevíte jak upravit ten for aby to začalo chodit? Zkoušel jsem přidat IFS=$'\n' ale nepomohlo to. Díky za každou radu.

    Řešení dotazu:


    Odpovědi

    27.5.2016 21:46 NN
    Rozbalit Rozbalit vše Re: Nefunguje for loop v bourne shell
    Tipnu, ze problem bude tady:
    sed "s/$OLDVM/$NEWVM/"
    Protoze, nahradis dvakrat to same..
    28.5.2016 00:47 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: Nefunguje for loop v bourne shell
    Řeším pouze smyčku:

    for i in "abc def"; do echo $i; done proběhne jednou a vypíše řetězec: abc def

    for i in abc def; do echo $i; done proběhne dvakrát a vypíše řetězce: abc a def

    Když tak ale koukám na to řetězení ls a 2x grep. Tak spíše něco jako... for vdmk in "${OLDVMSTORE}/${OLDVM}"/*.vdmk*; do ...; done. Ve smyčce můžete vyřídit případný -flat.vdmk (pokud substring, pak continue).

    A ještě poznámka: ls | grep .vdmk není ls *.vdmk* (což jste asi chtěl), ale ls *?vdmk* (což je spíše omyl?).
    Řešení 1× (jose17)
    28.5.2016 08:48 majales | skóre: 20 | blog: Majales
    Rozbalit Rozbalit vše Re: Nefunguje for loop v bourne shell
    Nakonec jsem to upravil takto:
    VM_VMDK_DESCRS=$(ls "$OLDVMSTORE/$OLDVM" | grep ".vmdk" | grep -v "\-flat.vmdk")
    for VMDK in ${VM_VMDK_DESCRS//\\n/ }
    do
      echo "Cloning VMDK : $VMDK"
      #echo "MEZERA"
      NEWVMDK=$(echo ${VMDK##*/} | sed "s/$OLDVM/$NEWVM/")
      vmkfstools -i "$OLDVMSTORE/$OLDVM/$VMDK" "$NEWVMSTORE/$NEWVM/$NEWVMDK" -d thin
      echo
    done
    Funguje to. Díky všem.
    30.5.2016 20:33 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: Nefunguje for loop v bourne shell
    Možná jsem to nevysvětlil dost jasně, ale tohle nezačalo "fungovat", protože je tam ta náhrada vzorce (${VM_VMDK_DESCRS//\\n/ }), která na to nemá vliv, ale protože kolem ${VM_VMDK_DESCRS} (s náhradou nebo bez) už nejsou uvozovky.
    k3dAR avatar 30.5.2016 21:35 k3dAR | skóre: 44
    Rozbalit Rozbalit vše Re: Nefunguje for loop v bourne shell
    ja ti pomuzu :)
    # tahle smycka pojede 3x protoze jde o 3 nezavisle vstupy
    for neco in jedna dva tri; do
    
    # tahle smycka pojede 1x protoze jde o 1 souvislej vstup
    for neco in "jedna dva tri"; do
    
    a je jedno jestli jde o vypsane vstupy primo ve smycce, nebo jde o promenou ktera je obsahuje
    porad nemam telo, ale uz mam hlavu... nobody

    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.