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 | Zajímavý software

    Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.

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

    Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.

    Ladislav Hagara | Komentářů: 6
    včera 02:22 | Nová verze

    Společnost Murena představila (YouTube) novou verzi 4.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.

    Ladislav Hagara | Komentářů: 0
    12.6. 16:33 | Bezpečnostní upozornění

    V Arch User Repository (AUR) bylo kompromitováno přes 400 opomíjených balíčků (jejich seznam). Útočník do nich začlenil škodlivý npm balíček atomic-lockfile, který krade citlivá data uživatelů. Publikována byla předběžná analýza spouštěného malwaru deps.

    Ladislav Hagara | Komentářů: 11
    12.6. 11:33 | Nová verze

    Homebrew, správce balíčků nejen pro macOS, byl vydán ve verzi 6.0.0 (seznam změn). Hlavními novinkami jsou bezpečnostní mechanismus tap trust kvůli důvěryhodnosti závislostí, vylepšení sandboxingu na Linuxu, interní JSON API nebo zlepšení výkonu.

    |🇵🇸 | Komentářů: 0
    12.6. 03:33 | Bezpečnostní upozornění

    Byla nalezena a 9. června opravena kritická zranitelnost ve FreeBSD v Kernel TLS (KTLS). Pojmenována byla Bumsrakete (FreeBSD-SA-26:26.ktls, CVE-2026-45257). Lokální neprivilegovaný uživatel může přepisovat soubory, ke kterým má právo pouze pro čtení. Přepsáním setuid binárky a jejím spuštěním může získat roota. Na všech verzích od verze 13.0 vydané v dubnu 2021.

    Ladislav Hagara | Komentářů: 2
    11.6. 14:11 | Komunita

    Vývojáři open source operačního systému ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, se na síti 𝕏 pochlubili, že ReactOS zvládne počítačovou hru Half-Life.

    Ladislav Hagara | Komentářů: 5
    11.6. 10:44 | Nová verze

    Byla vydána nová verze 4.8 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.

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

    Apple container dospěl do verze 1.0.0. Jedná se o open source nástroj pro spouštění linuxových kontejnerů na macOS postavený nad containerization. Napsaný je v programovacím jazyce Swift a optimalizovaný pro Apple silicon.

    Ladislav Hagara | Komentářů: 5
    11.6. 03:33 | Nová verze

    Bylo vydáno Eclipse IDE 2026-06 aneb Eclipse 4.40. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1904 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: FOR proč nefunguje (kde je chyba)

    pepe_ avatar 9.9.2012 16:18 pepe_ | skóre: 48
    FOR proč nefunguje (kde je chyba)
    Přečteno: 511×

    Ahojky , potřebuji vysvětlit FOR :

     

    a="Zkouska psani textu" ; b=(${#a}) ; for i in {1..b} ; do sleep .02 ; echo -en "${a:i-1:1}" ; done ; echo -en "\n"

    Tnefunguje s chybou :  bash: a: {1..b}: syntaktická chyba: očekáván operand (chybný token je „{1..b}“)

     

    Funguje jen

    a="Zkouska psani textu" ; b=(${#a}) ; for i in $(seq $b) ; do sleep .02 ; echo -en "${a:i-1:1}" ; done ; echo -en "\n"

     

    Jak zadat do FORu        for i in {1..b}  aby to fungoval jak má ?

     

    Děkuji.


    Řešení dotazu:


    Odpovědi

    pepe_ avatar 9.9.2012 16:30 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)

    Řešení ikdyž podivné

     

    a="Zkouska psani textu" ; b=(${#a}) ; for (( i=1 ; $i-$b-1 ; i=$i+1 )) ; do sleep .02 ; echo -en "${a:i-1:1}" ; done ; echo -en "\n"

    pepe_ avatar 9.9.2012 16:39 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)

    Jak to upravit pro /BIN/SH  respektive /bin/sh  ?

    9.9.2012 18:28 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)
    #!/bin/sh
    
    a="Zkouska psani textu"
    b=`expr length "$a"`
    
    for i in `seq 1 $b`
    do
    sleep .02
    part=`expr substr "$a" "$i" 1`
    echo -n "$part"
    done
    
    echo
    pepe_ avatar 9.9.2012 19:34 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)

    To je sice hezké ale    když neobsahuje  seq  ani expr ?

    9.9.2012 19:56 l4m4
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)
    seq je GNU, ale expr je POSIX.1, tudíž neobsahuje-li systém expr, není to plnohodnotný unixový systém a je zapotřebí prozkoumat a popsat možnosti, co vlastně k disposici je. Bez toho se nedá radit, protože POSIX je dost základní předpoklad, který každý normálně činí implicitně...
    9.9.2012 22:52 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)
    #!/bin/sh
      
    a="Zkouska psani textu"
    b=`expr length "$a"`
    i=1
     
    while [ $i -le $b ]
    do
    sleep .02
    part=`expr substr "$a" "$i" 1`
    echo -n "$part"
    i=$((i+1))
    done
      
    echo
    

    Je to bez pouzitia seq , ale ako odstranit resp. cim nahradit expr , tak to teda nemam sajn. Takze, co povedal l4m4, tak to plati. Bez znalosti dostupnosti sady nastrojov je tazko cokolvek spravit. A osobne som ani netusil, ze expr moze byt nedostupny. Urcite to nesposobovala nedostupnost seq ?

    pepe_ avatar 10.9.2012 19:18 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)

    Máš pravdu , EXPR má i router .

     

    /bin:
    boot.sh             convert_forward.sh  df                  gzip                login               mv                  sleep
    busybox             convert_mac.sh      disconnect.sh       hostname            ls                  netstat             tar
    cat                 convert_tf.sh       dmesg               ip                  mkdir               ping                true
    chmod               cp                  echo                kill                more                ps                  umount
    chown               date                false               lash                mount               rm                  uname
    connect.sh          dd                  grep                ln                  msh                 sh                  vi
    
    /sbin:
    approconfig  auth         calc         ifconfig     init         iwcontrol    iwpriv       reboot       syslogd      tcpdump      vnstat
    arp          brctl        flash        ifstat       iptables     iwlist       klogd        route        tc           udhcpc       watchdog
    
    /usr/bin:
    [           clear       cut         expr        ftpget      killall     nslookup    reset       test        tr          uptime
    arping      crontab     dumpleases  free        ftpput      logger      renice      telnet      top         traceroute  wc
    
    /usr/sbin:
    crond          dnsmasq        dropbearkey    ftpd           inetd          pppoe-relay    telnetd        udhcpd
    dhcrelay       dropbear       dropbearmulti  httpd          pppd           rdate          tinysnmpd

    a to se dá považovat za minimalistický linux. Takže vyřešeno i SH. Děkuji.

    9.9.2012 19:04 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)
    #!/bin/bash
    
    
    a="Zkouska psani textu"
    #b=(${#a})
    b=${#a}
    
    # $i-$ib-1 ??? nijako neovplyvni chod
    # for (( i=1 ; $i-$b-1 ; i=$i+1 ))
    for (( i=0; i<$b; i++ ))
    do 
    	sleep .02
    	# parameter -e pre echo nema zmysel v tomto prikaze
    	# i-1 ??? tak preco nezacnes for cyklus s i=0 ?
    	#echo -en "${a:i-1:1}"
    	echo -n "${a:$i:1}"
    done
    
    # na jednej strane zakazes odsadenie na novy riadok a na druhej
    # strane povolis interpretaciu spatneho lomitka a zadas znak
    # pre novy riadok, aby sa spracoval
    # Nedava to moc logiku. :)
    #echo -en "\n"
    echo

    Som si dovolil opravit tvoje, bo neviem, ale bolo to prinajlepsom "zvlastne". :)

    pepe_ avatar 9.9.2012 19:32 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)

    a="Zkouska psani textu" ; b=${#a} ; for (( i=0; i<$b; i++ )) ; do sleep .02 ; echo -n "${a:$i:1}" ; done ; echo -en "\r"

     

    To tvoje je hezčí (děkuju).

    9.9.2012 16:33 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)
    Tedy v bashi moc nepíšu, ale mám dojem, že syntax je for x in "word list" tedy, že množina čísel se do in musí převést na seznam slov.
    9.9.2012 17:18 l4m4
    Rozbalit Rozbalit vše Re: FOR proč nefunguje (kde je chyba)
    Žádná množnina čísel v bashi neexistuje, akorát konstrukce, kterou expanduje na seznam čísel (slov, chceš-li).

    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.