Ti, kdo se šťourají v profilu Firefoxu, vědí, že ukládá svoje data (historie, cookies apod.) do databáze SQLite (soubory s příponou „.sqlite“). Tato databáze má tu nectnost, že „vymazaná“ data fyzicky neodstraňuje, dokud na tabulku (nebo index) nezavoláte SQL příkaz „VACUUM“ (asi něco jako když „smažete“ soubory ve Windows :-)). To má za následek, že soubor databáze časem bobtná (podle toho kolik surfujete, hodně přidávají RSS čtečky) a potenciálně zpomaluje prohlížeč (ne dramaticky – nicméně mně bobtná opravdu hodně :-) – mažu historii a zmenšuju jednou měsíčně – právě kvůli RSS blogů).
Pro její zmenšení můžete použít výborný multiplatformí (postavený na Qt frameworku) program SQLite Database Browser. Stačí otevřít databázi (nejlépe je asociovat příponu .sqlite s tímto programem) a dát File -> Compact database. Má ale chybku v tom, že neumožňuje dávkové zpracování – databází je ve Firefoxu více a navíc i další programy využívají výhod SQLite :-) (schválně zkuste najít na začátku obsahu souborů „SQLite format 3“ – ty ovšem nebobtnají tak rychle, ale někdy je to zajímavé počteníčko ;-)).
Takže jsem si (z lenosti :-)) napsal skriptík, který dávkové zpracování umožňuje. Pro jeho běh budete potřebovat Python (řady 3) (tučňák ho obvykle má v sobě). Pokud máte sklony naučit se programovat, začněte právě Pythonem – snadno se učí a umí opravdu mnoho (právě práce s databází SQLite je strašně snadná a rychlá – proto ho používám; zkuste si napsat jednoduchý program s databází v Javě – vrátil jsem se k Pythonu, nechci tu ale vyvolávat flame).
Fígl pro SQLite
Jedna databáze může obsahovat hodně tabulek a indexů a je příliš pracné psát pro ně příkazy ručně, nehledě na to, že se mohou změnit – název/počet. Fígl je v tom, že každá SQLite databáze obsahuje tabulku sqlite_master, která obsahuje jména všech tabulek a indexů. Stačí tedy jen položit SQL dotaz
SELECT name FROM sqlite_master WHERE type=“table“ (nebo „index“)
Číst dál »