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 14:11 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

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

    Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.

    Ladislav Hagara | Komentářů: 9
    dnes 11:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Komunita

    V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Nová verze

    Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 02:00 | Nová verze

    Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.

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

    Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.

    Ladislav Hagara | Komentářů: 2
    14.6. 21:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    14.6. 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
    13.6. 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ářů: 8
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1916 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Jak v bashi převedu malá písmena na VELKÁ?

    David Watzke avatar 20.12.2005 16:02 David Watzke | skóre: 74 | blog: Blog... | Praha
    Jak v bashi převedu malá písmena na VELKÁ?
    Přečteno: 262×
    Jak v Bashi převedu malá písmena na VELKÁ? Díky.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

    Odpovědi

    David Watzke avatar 20.12.2005 16:03 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Konkrétně bych chtěl z abc udělat [aA][bB][cC].
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 16:13 Přemek Jordák | skóre: 12 | Beroun
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    $ echo "AbCDeFgh" |tr [:lower:] [:upper:]
    Blogy neprohlížím, nepíši a ani se jim valně nesměji
    20.12.2005 16:33 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Nehledáš spíš case-insensitive grep (-i) nebo sed ( /.../i )?
    David Watzke avatar 20.12.2005 19:23 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    To asi ne, protože bych to chtěl ... no, radši uvedu příklad:
    abc2cba převést na [aA][bB][cC]
    bcd2dcb převést na [bB][cC][dD]
    a to tak, že si pomocí cut -d2 -f1 vyříznu to před dvojkou a pak to nějak nacpu do [??][??][??]... jenže to bude asi dost kódu... Tedy pokud použiju tr, tak určitě.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 20:11 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
      r=''
      while [ -n "$s" ]; do
        l="${s:0:1}"
        u=`echo "$l" | tr '[:lower:]' '[:upper:]'`
        r="${r}[${l}${u}]"
        s="${s:1}"
      done
    
    Ale, upřímně řečeno, v céčku to napíšete za třetinu času a poběží to o řád rychleji (spíš o několik řádů).
    David Watzke avatar 20.12.2005 20:25 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Wow. Je to tak hustý, že se v tom ani nevyznám. Nějak jsem z toho pochopil, že bych to měl uložit do scriptu a spustit to z parametrem třeba abc. Jenže to nic nevypíše.
    Ale, upřímně řečeno, v céčku to napíšete za třetinu času a poběží to o řád rychleji (spíš o několik řádů).
    No, to je možný, ale nenapíšu to v Bashi, natož v C. :-(
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 20:53 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Napsat jen do souboru a spustit nestačí, musíš tomu předat vstupní hodnoty (s) a výstup lovit v r.
    [tsunami@vodik]$ s=ToJeAlEkRaViNa
    
    [tsunami@vodik]$   r=''
    
    [tsunami@vodik]$   while [ -n "$s" ]; do
    >     l="${s:0:1}"
    >     u=`echo "$l" | tr '[:lower:]' '[:upper:]'`
    >     r="${r}[${l}${u}]"
    >     s="${s:1}"
    >   done
    
    [tsunami@vodik]$ echo $r
    [TT][oO][JJ][eE][AA][lL][EE][kK][RR][aA][VV][iI][NN][aA]
    
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    David Watzke avatar 20.12.2005 20:54 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Aha, super.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 20:12 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Vypadá to, že ten výsledek je regulární výraz k nějaké další operaci. Zkus napsat, co s tím řetězcem budeš dělat potom. Není vyloučeno, že obě části půjdou vyřešit dohromady nějakým trikem.
    David Watzke avatar 20.12.2005 20:26 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Týká se to mýho skriptu - NCoda.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    21.12.2005 17:03 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    V tom případě shopt -s nocaseglob.
    20.12.2005 16:09 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    man tr
    20.12.2005 16:47 pol
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    já si obšlehl skriptík, a teď ho vždycky jenom zavolám...


    #!/bin/bash
    for file in *
    do
    newfile=`echo "$file" | tr A-Z a-z`
    mv "$file" $newfile
    done

    David Watzke avatar 20.12.2005 21:15 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Dobře, mám tedy
    s=`echo $1 | cut -d2 -f1`
     while [ -n "$s" ]
      do
       l="${s:0:1}"
       u=`echo "$l" | tr '[:lower:]' '[:upper:]'`
       r="${r}[${l}${u}]"
       s="${s:1}"
      done
    echo *.${r}
    Chci to pak použít ve funkci:
    WL() {
     s=`echo $1 | cut -d2 -f1`
     while [ -n "$s" ]
      do
       l="${s:0:1}"
       u=`echo "$l" | tr '[:lower:]' '[:upper:]'`
       r="${r}[${l}${u}]"
       s="${s:1}"
      done
    echo *.${r}
    }
    
     WL
    a proměnná r je prázdná. Proč to nejde ve funkci? :-(
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    David Watzke avatar 20.12.2005 21:15 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Samozřejmě to spouštím s parametrem typu aaa2bbb.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 21:19 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Je mi to skoro trapné, ale mě to funguje
    [tsunami@vodik]$ WL() {
    >  s=`echo $1 | cut -d2 -f1`
    >  r=''
    >  while [ -n "$s" ]
    >   do
    >    l="${s:0:1}"
    >    u=`echo "$l" | tr '[:lower:]' '[:upper:]'`
    >    r="${r}[${l}${u}]"
    >    s="${s:1}"
    >   done
    > echo *.${r}
    > }
    
    [21:17:12]-[~]-
    [tsunami@vodik]$ WL ahoj2magor
    *.[aA][hH][oO][jJ]
    
    Nezapomeň na to r='', to je tam docela potřeba.
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    David Watzke avatar 20.12.2005 21:21 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Aha, podcenil jsem to...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 21:17 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Jestli to WL na konci tvého příspěvku znamená spuštění funkce, tak je to jasné.

    Ty té funkci nepředáš parametry, ale uvnitř se na ně odvoláváš($1).
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    David Watzke avatar 20.12.2005 21:20 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Znamená, ale proč nepředám? Myslel jsem, že ta funkce si vezme $1 z shellu. :/ Jak ho přemluvím?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 21:27 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Že by zcela překvapivě 'WL "$1"'?
    David Watzke avatar 20.12.2005 21:33 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Jojo. :-( Snad jsem tady taky neudělal nějakou blbost (no, zřejmě jo)
    WL() {
     s=`echo $1 | cut -d2 -f1`
     r=''
     while [ -n "$s" ]
      do
       l="${s:0:1}"
       u=`echo "$l" | tr '[:lower:]' '[:upper:]'`
       r="${r}[${l}${u}]"
       s="${s:1}"
      done
    echo *.${r}
    }
    
    aac2wav() {
     for F in `WL $1`
      do
       faad -o "${F%%.*}.wav" "$F"
      done
    }
    Proč je ve funkci aac2wav zase prázdno?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 22:00 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Protože $1 ve funkci je parametr té funkce a ne celého skriptu.
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    David Watzke avatar 20.12.2005 22:04 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Je to ale v ``. Jak to tedy udělám?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 22:20 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Představujte si funkci jako samostatný skript, který máte jen shodou okolností napsán v témže souboru. Poziční parametry ve funkci expandují na parametry, se kterými je volána příslušná funkce. Takže v těle funkce WL expanduje $1 na první parametr funkce WL, v těle funkce aac2wav na první parametr funkce aac2wav a jinde na první parametr skriptu.
    20.12.2005 22:22 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Jinak bych asi použil 'find . -maxdepth 0 -type f -iname "*.$1"'
    20.12.2005 22:27 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    maxdepth 0 asi nebude pracovat, chtělo by to 1

    a taky bych se vyprdnul na ten for cyklus a použil u findu -exec
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    David Watzke avatar 20.12.2005 22:34 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Vyprdnul na for cyklus, jo... Tak teď už v tom mám totální guláš. :-( Jak bys to chtěl tedy udělat?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 22:39 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    neřeš, plácám blbosti

    akorát si dej bacha na mezery v názvech souboru

    Koukal jsem do toho tvého skriptu ncoda a všiml si, že používáš češtinu s diakritikou v kódování UTF-8, to nedělej. Když už chceš použít češtinu, tak bez háčků a čárek. Nebo to rovnou piš anglicky.
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    David Watzke avatar 20.12.2005 22:40 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Mezery jsou (AFAIK) zajištěný. Na tu diakritiku si dám pozor.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    20.12.2005 23:05 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak v bashi převedu malá písmena na VELKÁ?
    Jasně, 1, hloupý překlep…

    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.