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 15:22 | IT novinky

    Probíhá Meta Connect 2023. Společnost Meta představuje své novinky v oblasti AI a virtuální, smíšené a rozšířené reality. Představeny byly nové chytré brýle Ray-Ban | Meta a headset Meta Quest 3.

    Ladislav Hagara | Komentářů: 0
    dnes 12:00 | IT novinky

    Eben Upton oficiálně představil (YouTube) nové Raspberry Pi 5 (YouTube). Je více než 2x výkonnější než jeho předchůdce, model 4B.

    Ladislav Hagara | Komentářů: 6
    dnes 08:00 | Nová verze

    Byl vydán (YouTube) Counter-Strike 2. Nativně také pro Linux. Jedná se o největší technologický skok v historii této populární herní série.

    Ladislav Hagara | Komentářů: 6
    dnes 07:00 | Komunita

    Richard Stallman vystoupí v Praze s přednáškou Free Software And Your Freedom. V sobotu 30. září ve 14:30 na Pedagogické fakultě UK a v neděli 1. října v 18:00 hodin v rámci konference Hackers Congress Paralelní Polis.

    Jendа | Komentářů: 7
    včera 14:44 | Nová verze

    Byla vydána verze 6 s kódovým název Faye linuxové distribuce LMDE (Linux Mint Debian Edition). Podrobnosti v poznámkách k vydání. Linux Mint vychází z Ubuntu. LMDE je postaveno na Debianu.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | Bezpečnostní upozornění

    Byly publikovány informace o novém bezpečnostním problému pojmenovaném GPU.zip (paper, GitHub). S vlastním logem. Jedná se o možný útok postranním kanálem na grafickou kartu (GPU). Proces může "krást pixely" jinému procesu.

    Ladislav Hagara | Komentářů: 1
    včera 08:00 | Komunita

    Projekt GNU dnes slaví 40. výročí. Přesně před čtyřiceti lety, 27. září 1983, Richard Stallman oznámil, že se chystá napsat s Unixem kompatibilní operační systém GNU (Gnu's Not Unix). Hlavní oslava a setkání hackerů probíhá ve Švýcarsku ve městě Biel/Bienne. Na programu je také přednáška Richarda Stallmana.

    Ladislav Hagara | Komentářů: 11
    26.9. 15:55 | Nová verze

    Byl vydán Mozilla Firefox 118.0. Přehled novinek v poznámkách k vydání, poznámkách k vydání pro firmy a na stránce věnované vývojářům. Vypíchnout je nutno automatický lokální strojový překlad webových stránek. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 118 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 41
    26.9. 12:55 | Nová verze

    Byla vydána nová major verze 15.0.0 softwaru OCRmyPDF pro přidávání textové vrstvy k naskenovaným PDF dokumentům (PDF/A). Přehled novinek v poznámkách k vydání. OCRmyPDF využívá pro optické rozpoznávání znaků (OCR) engine Tesseract.

    Ladislav Hagara | Komentářů: 22
    26.9. 12:22 | Zajímavý software

    Karel Matějka zveřejnil druhé demo své chystané hry Bzzzt. Kromě verze pro Windows a macOS je dostupná i verze pro Linux. Plná verze hry má vyjít zanedlouho.

    Ondřej J | Komentářů: 8
    Knihy s linuxovou tematikou
     (19%)
     (15%)
     (51%)
     (27%)
    Celkem 279 hlasů
     Komentářů: 11, poslední 17.9. 19:19
    Rozcestník

    Dotaz: Bash, hledám řádek

    29.3.2015 18:51 Petr
    Bash, hledám řádek
    Přečteno: 220×
    Ahoj, mám soubor historie.txt kam si zapisuji všechny soubory které si otevřu pomocí skriptu (echo $1 >> historie.txt). Jak v pomocí bashe najdu posledně otevřený soubor z daného adresáře?

    ./blabla ~/Pictures/kittens/lol.jpg
    ./blabla ~/Music/lol/Katrin.jpg
    ./blabla ~/Pictures/kittens/ #by mi mel otevrit lol.jpg
    #ALE ./blabla ~/Pictures/ #neudela nic

    #############################################################
    Obsah historie.txt:
    ~/Pictures/kittens/lol.jpg
    ~/Music/lol/Katrin.jpg


    Odpovědi

    29.3.2015 20:03 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: Bash, hledám řádek
    Podle ukázky poznáváte adresář podle koncového lomítka (pokud ne, tak snad to postačí pro inspiraci), pak např. takto:
    #!/bin/bash
    
    if test "${1:$((${#1}-1))}" = "/"; then
       declare -A last
       while read line; do
          dname=${line%/*}/
          fname=${line##*/}
          last[${dname}]=${fname}
       done < historie.txt
    
       if test -n "${last[${1}]}"; then
          myfile=$1/${last[${1}]}
       else
          #neudela nic
          exit 0
       fi
    else
       myfile=${1}
    fi
    echo ${myfile}
    
    Jestli je účelné čistě v bashi je jiná otázka. :)

    A pak ještě pozor. V té ukázce si ukládáte adresáře s tildou, ale pokud budete volat ./blabla ~/Pictures/kittens/, tak ve ${1} už to bude expandované. A pokud to zavoláte ./blabla '~/Pictures/kittens/', tak si tu tildu budete muset nahrazovat sám.
    29.3.2015 20:14 Petr
    Rozbalit Rozbalit vše Re: Bash, hledám řádek
    Děkuji za odpověď, ale našel jsem elegantnější způsob pomocí příkazu realpath

    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.