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:11 | Zajímavý článek

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

    Ladislav Hagara | Komentářů: 0
    dnes 10:44 | Nová verze

    Po delší době vývoje vyšla nativní linuxová verze virtuálního bubeníka MT-PowerDrumKit 2 ve formátu VST3. Mezi testovanými hosty jsou Reaper, Ardour, Bitwig a Carla.

    balda | Komentářů: 1
    včera 21:33 | Nová verze

    Desktopové prostředí Budgie bylo vydáno ve verzi 10.10. Dokončena byla migrace z X11 na Wayland. Budgie 10 vstupuje do režimu údržby. Vývoj se přesouvá k Budgie 11. Dlouho se řešilo, v čem bude nové Budgie napsáno. Budgie 10 je postaveno nad GTK 3. Přemýšlelo se také nad přepsáním z GTK do EFL. Budgie 11 bude nakonec postaveno nad Qt 6.

    Ladislav Hagara | Komentářů: 0
    včera 13:00 | Humor

    OpenChaos.dev je 'samovolně se vyvíjející open source projekt' s nedefinovaným cílem. Každý týden mohou lidé hlasovat o návrzích (pull requestech), přičemž vítězný návrh se integruje do kódu projektu (repozitář na GitHubu). Hlasováním je možné změnit téměř vše, včetně tohoto pravidla. Hlasování končí vždy v neděli v 9:00 UTC.

    NUKE GAZA! 🎆 | Komentářů: 3
    včera 03:00 | Nová verze

    Byl vydán Debian 13.3, tj. třetí opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.13, tj. třináctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    10.1. 03:00 | Komunita

    Na stránkách Evropské komise, na portálu Podělte se o svůj názor, se lze do 3. února podělit o názor k iniciativě Evropské otevřené digitální ekosystémy řešící přístup EU k otevřenému softwaru.

    Ladislav Hagara | Komentářů: 6
    9.1. 19:44 | Zajímavý software

    Společnost Kagi stojící za stejnojmenným placeným vyhledávačem vydala (𝕏) alfa verzi linuxové verze (flatpak) svého proprietárního webového prohlížeče Orion.

    Ladislav Hagara | Komentářů: 5
    9.1. 19:11 | IT novinky

    Firma Bose se po tlaku uživatelů rozhodla, že otevře API svých chytrých reproduktorů SoundTouch, což umožní pokračovat v jejich používání i po plánovaném ukončení podpory v letošním roce. Pro ovládání také bude stále možné využívat oficiální aplikaci, ale už pouze lokálně bez cloudových služeb. Dokumentace API dostupná zde (soubor PDF).

    NUKE GAZA! 🎆 | Komentářů: 2
    9.1. 14:22 | Zajímavý článek

    Jiří Eischmann se v příspěvku na svém blogu rozepsal o open source AdGuard Home jako domácí ochraně nejen před reklamou. Adguard Home není plnohodnotným DNS resolverem, funguje jako DNS forwarder s možností filtrování. To znamená, že když přijme DNS dotaz, sám na něj neodpoví, ale přepošle ho na vybraný DNS server a odpovědi zpracovává a filtruje dle nastavených pravidel a následně posílá zpět klientům. Dá se tedy používat k blokování reklamy a škodlivých stránek a k rodičovské kontrole na úrovni DNS.

    Ladislav Hagara | Komentářů: 7
    9.1. 03:33 | Zajímavý software

    AI Claude Code od Anthropicu lépe rozumí frameworku Nette, tj. open source frameworku pro tvorbu webových aplikací v PHP. David Grudl napsal plugin Nette pro Claude Code.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (8%)
     (4%)
     (0%)
     (9%)
     (20%)
     (3%)
     (5%)
     (3%)
     (11%)
     (49%)
    Celkem 381 hlasů
     Komentářů: 8, poslední 10.1. 23:18
    Rozcestník

    Dotaz: BASH a pomaly prubeh skriptu

    26.9.2006 16:31 Chap
    BASH a pomaly prubeh skriptu
    Přečteno: 145×
    Ahoj, jsem v bashi zacatecnik (resp jsem jen potreboval prepsat neco z PHP). Mam nasledujici problem: Po spusteni skriptu s IP adresou externe predanou skriptu ($1).

    U skriptu jsou dva soubory a to tt.txt - ve kterem jsou prvni cisla z IP adres ,je jich 20 ktere se vyskytuji u ceskych rozsahu (X.0.0.0), cislo v tomto souboru je ulozeno ve tvaru +213+, abych zamezil moznosti napr grep 13 muze vratit 213.

    v souboru rozsahy.txt jsou vsechny ceske rozsahy ve formatu: 1-10znak zacatek rozsahu a 11-20 konec rozsahu ve tvaru ip2long.

    tudiz provadim nasledujici: GREP prvniho cisla IP v tt.txt pokud se zde nenachazi, automaticky se jedna o zahranicni IP. Pokud se v tt.txt nachazi zacnu prohledavat rozsahy.txt a porovnavat zda ip2long(ip) je v intervalu z nektereho z rozsahu.

    No a problem je ze prohledani 1 adresy trva radove 2-20s a potrebuji aby to zjistovalo radove v ms. Doufam ze jsem problem popsal dostatecne a ze je to jen nejaka moje lamerina. Predem dik za odpovedi.

    a zde je kod
    
    #!/bin/bash
    
    function ip2long(){
    	local IP="${1:?Missing ip in $FUNCNAME}"
    	local IP_SUM=0
    	local COUNT=3
    	for i in `echo "$IP"|sed 's:\.: :g'`; do
    		let IP_SUM+=$(($i<<($COUNT*8)))
    		let COUNT--
    	done
    	echo "$IP_SUM"
    }
    
    
    function najdiCZIP(){
    	ret="N"
    	long=`ip2long $1`
    	ipzac=`echo $1|cut -d. -f1`
    	if [ -n `cat tt.txt|grep +$ipzac+` ]
    	then 
    	  for k in `cat rozsahy.txt` 
    		do
    			start=`echo $k|cut -c1-10`
    			stop=`echo $k|cut -c11-20`
    			#echo "$start $long $stop"
    			if [ $long -ge $start ] && [ $long -le $stop ]
    				then
    				ret="C"
    				break
    			fi
    		done
    	fi
    	echo $ret
    }
    
    najdiCZIP $1
    

    Odpovědi

    26.9.2006 20:21 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: BASH a pomaly prubeh skriptu
    Nevím, jestli správně chápu zadání, ale jednotlivě (pod)sítě by bylo lepší definovat klasicky jako
    n.n.n.n/m.m.m.m
    eventuelně
    n.n.n.n/b (b je počet jedničkových bitů v masce)
    Kvůli obecnosti se budu držet první varianty zápisu. Jestliže chci zjistit, zda daná IP adresa patří do nějaké sítě, tak na ni aplikuju masku a musí mi vyjít to číslo před lomítkem. Pokud vyjde něco jiného, pak IP adresa do sítě nepatří. Takže kdybych měl soubor "site.txt", ve kterém budou řádky ve tvaru n.n.n.n/m.m.m.m pak můžu napsat třeba tento program:
    #!/usr/bin/env python
    import socket, struct, sys
    
    def ascii_ip_ton(ascii_quad):
        return struct.unpack('!L',socket.inet_aton(ascii_quad))[0]
    
    tested_ip_a = sys.argv[1]
    tested_ip = ascii_ip_ton(tested_ip_a)
    
    for pair in file('site.txt'):
        pair = pair.strip()
        network_a, mask_a = pair.split('/')
        network = ascii_ip_ton(network_a)
        mask = ascii_ip_ton(mask_a)
        if tested_ip & mask == network:
            print tested_ip_a, 'belongs to', pair
    
    Za sekundu zvládne zkontrolovat příslušnost ke 100 000 sítím. Ani trochu jsem se nesnažil to optimalizovat. Kdyby to bylo pořád málo, je zde možnost kešovat IP adresy převedené do numerického formátu.

    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.