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:44 | Komunita

    Richard Hughes oznámil, že po společnostech Red Hat a Framework a organizacích OSFF a Linux Foundation, službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzorují také společnosti Dell a Lenovo. Do dnešního dne bylo díky LVFS provedeno více než 145 milionů aktualizací firmwarů od více než 100 různých výrobců na milionech linuxových zařízení.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Americké technologické společnosti Microsoft, Google a xAI souhlasily, že vládě Spojených států poskytnou přístup k novým modelům umělé inteligence (AI) před jejich uvedením na trh. Oznámila to americká vláda, která tak bude moci prověřit, zda modely nepředstavují hrozbu pro národní bezpečnost. Oznámení podtrhuje rostoucí obavy Washingtonu z rizik spojených s výkonnými AI systémy. Americké úřady chtějí v rámci předběžného přístupu

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Společnost Valve zveřejnila (GitLab) nákresy ovladače Steam Controller a puku. Pro všechny, kdo by jej chtěli hacknout nebo modifikovat, případně pro ně navrhnout nějaké příslušenství. Pod licencí Creative Commons (CC BY-NC-SA 4.0).

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

    PHP bylo dlouho distribuováno pod vlastní licencí – s výjimkou částí spadajících pod licenci Zend Engine. Po několikaleté práci se povedlo PHP přelicencovat na 3bodovou licenci BSD.

    Ladislav Hagara | Komentářů: 0
    včera 05:00 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube). Na Linuxu je vedle Qt frontendu nově k dispozici také GTK4 / libadwaita frontend.

    Ladislav Hagara | Komentářů: 17
    5.5. 20:22 | IT novinky

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 3.1 specifikace OpenCL (Open Computing Language). OpenCL je průmyslový standard pro paralelní programování heterogenních počítačových systémů.

    Ladislav Hagara | Komentářů: 0
    5.5. 13:11 | Nová verze

    Homebridge pro integraci chytrých domácích zařízení byl vydán ve verzi 2.0.0. Nově vedle protokolu HomeKit Accessory Protocol (HAP) podporuje standard chytré domácnosti Matter.

    Ladislav Hagara | Komentářů: 0
    5.5. 04:11 | Nová verze

    Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 3.7.0 - The Gaming Edition. Z novinek lze vypíchnout příkaz omarchy a celou řadu herních možností.

    Ladislav Hagara | Komentářů: 2
    5.5. 03:11 | Nová verze

    CyberChef byl vydán v nové major verzi 11. Přehled novinek v Changelogu. CyberChef je webová aplikace pro analýzu dat a jejich kódování a dekódování, šifrování a dešifrování, kompresi a dekompresi, atd. Často je využívaná při kybernetických cvičeních a CTF (Capture the Flag).

    Ladislav Hagara | Komentářů: 0
    4.5. 20:11 | Nová verze

    Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (9%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (24%)
    Celkem 1515 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...

    13.11.2022 17:55 Pepa
    Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Přečteno: 421×
    Dobrý den, potřeboval bych zpracovávat očíslované soubory v adresáři tak, aby se zpracovaly podle čísel 1 2 3 4 5 6 7 8 9 10 11 12 ... a nevím jak to udělat v tomto případě: for file in *.jpg; A aby výstup byl opět správně 1 2 3 4 5 6 7 8 9 10 11. Zatím mi to čte soubory takto 1 10 100 101 102 1000 atd. Ještě doplnění některé soubory nejsou obsaženy, např. : 1 2 3 5 9 10 11 15 .... Takto vypadá např. název souboru: Screen-12.jpg Screen-13.jpg .... Děkuji moc za postrčení.
    Po pětašedesátce jde všechno pomaleji.

    Řešení dotazu:


    Odpovědi

    13.11.2022 18:43 X
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    for i in $(seq 1 1000); do
    ....
      [ -f "Screen-$i.jpg" ] && ....
    ....
    
    13.11.2022 18:55 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Nech sa páči:
    $ cd /dev/shm/
    $ mkdir e
    $ cd e
    $ touch 120.jpg
    $ touch 12.jpg
    $ touch 2.jpg
    $ ls
    12.jpg  120.jpg  2.jpg
    $ ls|sort -h
    2.jpg
    12.jpg
    120.jpg
    $
    debian.plus@protonmail.com
    14.11.2022 18:10 Pepa
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Toto .... ls|sort -h .....bohužel nechodí správně. Př. čísla souborů: 0 1 10 11 12 1223 1224 13 14 2 3 ..... Takto to nepotřebuji, ale takto: 0 1 2 3 10 11 12 13 14 1223 1224
    Po pětašedesátce jde všechno pomaleji.
    14.11.2022 18:36 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Žiaden problém. Miesto -h treba dat parameter -g.
    $ touch 0 1 10 11 12 1223 1224 13 14 2 3
    $ ls
    0  1  10  11  12  1223  1224  13  14  2  3
    $ ls|sort -g | xargs
    0 1 2 3 10 11 12 13 14 1223 1224
    debian.plus@protonmail.com
    Řešení 1× (MakeIranBombedAgain❗)
    14.11.2022 11:29 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...

    Pokud jsou čísla v názvech souborů dostatečně „hustá“, tedy žádná nejsou vynechaná nebo je vynechaných rozumně málo:

    for ((i = 1; i <= 1000; ++i)); do
      f="Screen-${i}.jpg"
      [[ -f "$f" ]] && echo "Do something with ${f}!"
    done
    

    Pokud jsou čísla v názvech souborů řídká a testovat existenci všech možných názvů souborů nemá smysl (a/nebo trvá 5000 let):

    declare -ai files
    for f in *.jpg; do
      f="${f%.jpg}"
      f="${f#Screen-}"
      ((++files[f]))
    done
    for i in "${!files[@]}"; do
      f="Screen-${i}.jpg"
      echo "Do something with ${f}!"  
    done
    unset files
    
    Výše uvedené využívá faktu, že (také) indexovaná pole v Bashi jsou řídká a při expanzi jsou implicitně setříděná podle indexů.
    14.11.2022 18:47 Pepa
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Perfektní! Toto chodí správně. Děkuji moc.
    Po pětašedesátce jde všechno pomaleji.
    14.11.2022 19:00 unreg
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    To mi prijde moc komplikovane. Pokud vychazim z premisy, ze nazev souboru je dle vzorku Screen-<cislo>.jpg, tak separator je "-" a zajima me druhy sloupec.

    vychozi stav:
    $ ls -1
    Screen-0.jpg
    Screen-10.jpg
    Screen-11.jpg
    Screen-1223.jpg
    Screen-1224.jpg
    Screen-12.jpg
    Screen-13.jpg
    Screen-14.jpg
    Screen-1.jpg
    Screen-2.jpg
    Screen-3.jpg
    sort:
    $ ls -1 | sort -t - -nk2
    Screen-0.jpg
    Screen-1.jpg
    Screen-2.jpg
    Screen-3.jpg
    Screen-10.jpg
    Screen-11.jpg
    Screen-12.jpg
    Screen-13.jpg
    Screen-14.jpg
    Screen-1223.jpg
    Screen-1224.jpg
    MakeIranBombedAgain❗ avatar 15.11.2022 11:11 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...

    todlecto dělání s ls už andrej jednou komentoval hele zdroj :O ;D

    Nikdy neparsuj výstup z ls. Je to

    • nechvalně známý antipattern,
    • náchylné ke spoustě zbytečných chyb,
    • naprosto a totálně a kolosálně zbytečné.

    takže asi jako tak :D ;D

    14.11.2022 18:58 X
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Nemas delat ty domaci ukoly kompletni, takhle se nic nenauci..
    MakeIranBombedAgain❗ avatar 15.11.2022 11:14 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...

    tssss todlecto je na domáckám moc praktický a ikdyby to jakoby byl domácák nóóó tak teďko se má jako aspoň z čeho učit :D ;D

    14.11.2022 18:29
    Rozbalit Rozbalit vše Re: Zpracování souborů v adresáři podle správného číselného pořadí : 1 2 3 4 ...10 11 12 ...99 100 101 ...
    Já bych ty fotky přejmenoval podle exifu na YYYY-MM-DD_mmhhss.jpg. Pak není co řešit.

    Případně, pokud tam není exif, se dají ty soubory přejmenovat tak, aby jejich názvy byly stejně dlouhé a na začátku byly uvozené nulami. Pak zase není co řešit.

    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.