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:22 | Bezpečnostní upozornění

    Úřad pro ochranu osobních údajů řeší desítky stížností na jednotné měsíční hlášení zaměstnavatele, které stát spustil počátkem dubna. Systém, jenž má firmám odlehčit od desítek formulářů, nejenže výrazně zatížil jejich účetní oddělení, ale docházelo v něm i k únikům osobních dat zaměstnanců k firmám, kde nepracovali. Podle ministerstva práce a sociálních věcí stála za problémem technická chyba. „Incident se týkal několika stovek

    … více »
    Ladislav Hagara | Komentářů: 3
    dnes 10:46 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 22.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

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

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 5
    dnes 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 4
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

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


    Dotaz: tr a proměnné

    31.5.2013 14:16 mcm | skóre: 13 | blog: linca | domažlice
    tr a proměnné
    Přečteno: 546×
    Ahoj, chtěl bych pomocí tr změnit velikost písmen v proměnné a takto upravenou velikost zase zpátky do proměnné vložit. Není rozhodující, zda to bude ta samá proměnná nebo jiná.
    Příklad: mám skript
    #!/bin/sh
    
    # Skript pro stazeni a zobrazeni informaci o pocasi konkretni ICAO stanice.
    
    case "$1" in
    	--help)
    		echo "Skript 'weather.sh' stahuje informace o pocasi z druzicoveho serveru 'http://weather.noaa.gov/'."
    		echo "Pouziti:"
    		echo "weather.sh [bez parametru] vypise informace o pocasi ve stanici LKPR (viz ICAO kody dale)."
    		echo "weather.sh --help vypise tuto napovedu."
    		echo "weather.sh -i [ICAO] vypise informace o pocasi ve stanici definovane parametrem 'ICAO'."
    		echo "Nejcasteji pouzivane ICAO kody (Kody ICAO nutno zapisovat velkymi pismeny!):
    		CZ:	Brno Turany	(LKTB)	Karlovy Vary	(LKKV)
    			Pardubice	(LKPD)	Plzen Line	(LKLN)
    			Praha Kbely	(LKKB)	Praha Ruzyne	(LKPR)
    			Ostrava Mosnov	(LKMT)
    		O:	Wien		(LOAN)
    		ESP:	Barcelona	(LEBL)	Madrid Torrejon	(LETO)
    		F:	Paris de Gaulle	(FLPG)
    		GR:	Athens		(LGAV)
    		H:	Budapest	(LHBP)
    		I:	Palermo		(LICJ)	Venezia		(LIPZ)
    			Rome (LdV)	(LIRF)
    		CH:	Geneve		(LSGG)
    		SL:	Bratislava	(LZIB)
    		B:	Brussel		(EBMB)
    		D:	Berlin Schonef.	(EDDB)	Frankfurt /M.	(EDDF)
    		GB:	London Luton	(EGGW)	London Gatwick	(EGKK)"
    		echo "Dalsi ICAO kody ke zjisteni na adrese:"
    		echo "http://en.wikipedia.org/wiki/International_Civil_Aviation_Organization_airport_code"
    		exit 1
    		;;
    	-i)
    		for ICAO in $2; do
    			export ICAO=$2
    		done
    		;;
    	*)
    		# Zakladni nastaveni v pripade, ze $ICAO neni definovano
    		export ICAO=LKPR
    		;;
    esac
    
    /usr/local/bin/curl -s http://weather.noaa.gov/pub/data/observations/metar/decoded/$ICAO.TXT
    echo
    
    exit 0
    
    
    a abych nemusel jako parametr pořád vypisovat ICAO velkýma písmenama, rád bych operaci trochu zautomatizoval. Je nějaká reálna šance, že půjde upravit velikost písmen proměnné pomocí příkazu tr? Nebo je to špatný postup?

    Díkes za jakoukoli radu, případně nasměrování :)

    Odpovědi

    31.5.2013 14:28 Kit
    Rozbalit Rozbalit vše Re: tr a proměnné
    Pro tento účel asi bude vhodnější sed.
    31.5.2013 14:34 Kit
    Rozbalit Rozbalit vše Re: tr a proměnné
    Aha, už jsem pochopil dotaz
    tr 'a-z' 'A-Z'
    31.5.2013 14:59 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: tr a proměnné

    Spíš

    tr '[:lower:]' '[:upper:]'

    nebo rovnou

    ICAO="${ICAO^^*}"

    (vyžaduje bash 4).

    31.5.2013 15:12 Kit
    Rozbalit Rozbalit vše Re: tr a proměnné
    To bych už raději místo toho prvního napsal
    sed 's/\(.*\)/\U\1/'
    a bude mi to fungovat i česky.
    31.5.2013 18:49 mcm | skóre: 13 | blog: linca | domažlice
    Rozbalit Rozbalit vše Re: tr a proměnné
    Ahoj, moc děkuju za rady, zkusim si z výukových důvodů všechny postupy, které jste mi nabídli.
    Jen dotaz k tomu tr: jak bych mu předhodil proměnnou a zase jí z něj dostal? Vim jak u souborů, ale u proměnných......
    To jen spíš pro úplnost a ukojení mojí zvědavosti.. :D
    Díky..
    31.5.2013 18:56 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: tr a proměnné
    ICAO=`echo "$ICAO" | tr '[:lower:]' '[:upper:]'`

    (vnější apostrofy jsou obrácené, vnitřní normální)

    1.6.2013 08:44 mcm | skóre: 13 | blog: linca | domažlice
    Rozbalit Rozbalit vše Re: tr a proměnné
    Tak to bylo přesně ono. Naprosto elegantní řešení. Děkuju moc :)) S tímhle doplňkem se mi ten skript líbí daleko víc :) Ještě jednou díkes...
    1.6.2013 09:19 Kit
    Rozbalit Rozbalit vše Re: tr a proměnné
    Pozor, nefunguje to pro české znaky. Alespoň mně ne.
    3.6.2013 12:11 mcm | skóre: 13 | blog: linca | domažlice
    Rozbalit Rozbalit vše Re: tr a proměnné
    Zkusil jsem to pomoci 'sed ....', ale nejak sem i to nepodarilo rozchodit... takze zkousim ruzny varianty - aspon se tim neco priucim.. mam nastrel, jak to udelat, takze vim, co mam hledat.. napisu, pokud si uz s tim nebudu vedet rady :)
    dikes za upozorneni a rady :)
    3.6.2013 12:29 Kit
    Rozbalit Rozbalit vše Re: tr a proměnné
    Mělo by to vypadat analogicky jako s tím "tr". Vyzkoušeno:
    ICAO="příšerně žluťoučký"
    ICAO=`echo "$ICAO" | sed 's/\(.*\)/\U\1/'`
    echo "$ICAO"
    
    výstup:
    PŘÍŠERNĚ ŽLUŤOUČKÝ
    
    Hlavně nepoplést uvozovky, apostrofy a obrácené apostrofy. Každý symbol má odlišný význam.
    7.6.2013 17:02 mcm | skóre: 13 | blog: linca | domažlice
    Rozbalit Rozbalit vše Re: tr a proměnné
    Zkoušel jsem to na jednom kompu a tam mi tohle nefungovalo.. Poměrně dlouho jsem si s tim lámal hlavu, nakonec mě napadlo to vyzkoušet jinde. Problém byl pouze ve verzi shellu, resp. sedu. Ten na tom prvnim kompu byl již hooodně za zenitem :))

    Díky za radu, sice mam problém ten zápis pochopit (to je ale otázka času stráveného studiem regulárních výrazů), nicméně funguje velmi dobře, takže jsem jej zahrnul misto 'tr' do skriptu.

    Ještě jednou díky za radu a nakopnutí vám oběma :)

    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.