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 01:33 | Nová verze

    Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 16:00 | Pozvánky

    V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede David Heidelberg, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem … více »

    lkocman | Komentářů: 0
    včera 14:11 | IT novinky

    Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.

    Ladislav Hagara | Komentářů: 1
    včera 05:55 | IT novinky

    Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o

    … více »
    Ladislav Hagara | Komentářů: 19
    včera 04:44 | IT novinky

    Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    18.8. 16:44 | Nová verze

    Byl vydán Mozilla Firefox 154.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 154 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    18.8. 14:33 | Nová verze

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).

    Ladislav Hagara | Komentářů: 0
    18.8. 11:55 | Nová verze

    Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    18.8. 00:44 | Nová verze

    Interaktivní editor binárních dat GNU poke byl vydán ve verzi 5.0 (seznam změn).

    |🇵🇸 | Komentářů: 13
    17.8. 18:55 | Nová verze

    Byla vydána verze 0.85 telnet a ssh klienta PuTTY (Wikipedie). Řešeno je 5 zranitelností.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2435 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: BASH - Odstranění znaků v řetězci

    7.3.2013 14:13 kluk
    BASH - Odstranění znaků v řetězci
    Přečteno: 1390×
    Ahoj, nejsem programátor ale nutně potřebuji opravit jeden script, poradí prosím někdo?

    Co potřebuji,
    1 pokud je v proměnné AAA první znak "S" tak ho potřebuji smazat a nastavit proměnnou S="true"
    2 pokud je v proměnné AAA poslední znak "E" tak ho potřebuji smazat  a nastavit proměnnou E="true"
    
    if [ "???" = "S" ]; then
     S="true";
     delete znak S;
    fi
    
    if [ "???" = "E" ]; then
     E="true"
     delete znak E;
    fi

    Řešení dotazu:


    Odpovědi

    7.3.2013 14:22 potato
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    ??? je "${proměnná:0:1}"

    delete znak je proměnná="${proměnná:1}"
    7.3.2013 14:25 kluk
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    Díky a ten poslední "E" ? pokud možno bez cyklu :( Děkuji
    7.3.2013 14:35 potato
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    proměnná=${proměnná:0:${#proměnná}-1}

    to odstraňování by možná bylo přehlednější pomocí expansních operátorů % a #, ale nezaškodí procvičit si občas klasickou práci s řetězci...
    7.3.2013 14:50 kluk
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    Díky moc, jak se dostanu k serveru tak to hned vyzkouším...
    7.3.2013 15:39 kluk
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    Tak vše funguje akorát nemám tu podmínku který zjistí existenci toho posledního znaku, můžu požádat ještě o ten zápis? Díky
    7.3.2013 15:51 potato
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    ${proměnná:${#proměnná}-1}
    7.3.2013 15:52 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    if [ "${AAA#${AAA%?}}" = "E" ]; then 
      E="true"; 
    fi
    
    Výše uvedené
    if [ "${AAA:0:${#AAA}-1}" = "E" ]; then 
      E="true"; 
    fi
    
    není vhodné, může-li být AAA prázdný řetězec tedy AAA=''
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    7.3.2013 20:57 potato
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    Pravdu díš, nechal jsem se unést...
    7.3.2013 16:11 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    #!/bin/bash
    
    #1st input argument
    AAA="$1"
    
    S='false'
    E='false'
    
    if [ "${AAA:0:1}" = "S" ]; then
      S="true";
      AAA="${AAA:1}"
    fi
    if [ "${AAA#${AAA%?}}" = "E" ]; then
      E="true";
      AAA="${AAA%?}"
    fi
    
    echo "E = '$E'"
    echo "S = '$S'"
    echo "AAA = '$AAA'"
    
    exit 0
    
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    8.3.2013 09:31 kei.101
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    
    S= E=
    
    TEST="${AAA#S}"
    [ "$TEST" = "$AAA" ] || S="true"
    AAA="$TEST"
    
    TEST="${AAA%E}"
    [ "$TEST" = "$AAA" ] || E="true"
    AAA="$TEST"
    
    8.3.2013 09:52 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: BASH - Odstranění znaků v řetězci
    if [[ $AAA = S* ]]; then
      S=true
      AAA="${AAA#S}"
    fi
    
    if [[ $AAA = *E ]]; then
      E=true
      AAA="${AAA%E}"
    fi
    If you hold a Unix shell up to your ear, you can you hear the C.

    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.