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í
×
    včera 16:11 | Nová verze

    Byl vydán Mozilla Firefox 152.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 152 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    včera 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ářů: 5
    včera 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ářů: 23
    včera 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
    včera 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
    včera 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
    včera 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
    15.6. 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
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1918 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: 549×
    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.