Oznámení

Sbalit
Aktuálně žádná oznámení.

Používání komprimačních utilit lha, lzx a unzip

Sbalit
X
Sbalit
  •  

  • Používání komprimačních utilit lha, lzx a unzip

    I na amize se z důvodu úspory diskového prostoru nebo snadné manipulace s většími adresáři používají komprimační utility. Většina dostupných archivů je vytvořena v lha, některé v lzx a při přenosu dat z pc do amigy často narazíte i na klasický zip.

    Komprimační utilita Lha se v amize používá nejdelší dobu, přičemž za jejím rozšířením stojí nejenom to, že byla jedna z prvních, ale především její open source licence.

    Mám v amize lha?

    Pokud jste v nedávné době pořídili amigu s nainstalovaným systémem na disku a nejste si jisti, zda již lha nemáte v systému, můžete to ověřit v AmigaDosu, který lze spustit např. přes zkratku PraváAmiga + E a zadáním příkazu newcli.
    Spuštění AmigaDosu


    ​Spuštění AmigaDosu

    Do konzole napište lha (1) a zmáčkněte enter. Pokud lha v systému nemáte, zobrazí se informace lha:Unknown command. Druhý způsob ověření je příkaz dir c:lh#? (2), který vypíše z umístění C: veškerý obsah začínající na lh. C: je systémový adresář, kde se lha a podobné programy běžně nachází. Pokud je výsledkem nic, jako na obrázku níže, lha se v systémovém adresáři nenachází a je potřeba tuto utilitu do systému přidat.
    Lha v amize pravděpodobně nemám.


    ​Lha v amize pravděpodobně nemám.

    Jestliže do systému někdo někdy lha přidal, zobrazí se tato informace.
    Lha nalezeno. Bude se pravděpodobně nacházet v C:


    ​Lha nalezeno. Bude se pravděpodobně nacházet v C:


    Pokud tedy lha máte v systému, přeskočte instalační část a začněte tuto komprimační utilitu používat. Nicméně nyní budu předpokládat, že ji nemáte a potřebujete ji do systému přidat.

    Mimochodem, stejně můžete otestovat přítomnost ostatních komprimačních utilit v systému, tedy lzx i unzip.

    „Instalace“ lha

    Lha lze stáhnout z aminetu. Stáhněte starší verzi, která je samorozbalovací a pak i novější, která má ošetřeny některé chyby. Oba soubory (lha.run a lha_68k.lha) nahrajte na disketu nebo CompactFlash kartu a nakopírujte je do amigy.

    Budu předpokládat, že vše provádíme přes pc dd disketu.

    Nastartujte AmigaDOS.
    Execute Command – spuštění Shellu
    Execute Command – spuštění Shellu



    A přejděte na disketu příkazem PC0: (1)

    Pro jistotu vypište příkazem DIR obsah diskety (2).

    Zkopírujte oba soubory (lha.run a lha_68k.lha) do ram disku. To provedete příkazem copy lha#? ram: (3)
    „Instalace“ Lha – část 1.


    ​„Instalace“ Lha – část 1.


    Nyní přejdeme příkazem ram: (4) do ramdisku a rozbalíme samorozbalovací archiv, stačí pouze napsat lha.run (5) a zápis ukončit entrem.

    Rozbalí se několik verzí utility lha pro různé verze procesoru, nicméně my je budeme potřebovat jen pro rozbalení novější verze lha_68k.lha.

    Příkazem makedir MojeLha (6) vytvoříme v ramdisku adresář MojeLha, do kterého rozbalíme novější verzi utility lha. Rozbalení provedeme příkazem lha_68k x lha_68k.lha ram:MojeLha/ (7)

    Jednotlivé části příkazu znamenají: příkazem lha (konkrétně lha_68k) rozbal (parametr x) archiv lha_68k.lha do adresáře MojeLha v ram: (tedy ram:MojeLha). Na konci musí být bezpodmínečně lomítko, jinak se rozbalení nepodaří!
    „Instalace“ Lha – část 2.


    ​„Instalace“ Lha – část 2.


    Nyní do adresáře vstoupíme, tedy napíšeme MojeLha ( 8 ) a necháme obsah adresáře vypsat příkazem dir (9). Příkazem cpu (10) zjistíme, jaký typ procesoru máme v amize a podle toho nakopírujeme příslušnou verzi utility lha do systémového adresáře C:
    • Soubor lha_68k je určen pro procesory 68000 a 68010;
    • soubor lha_68020 je určen pro procesory 68020 a 68030;
    • soubor lha_68040 je určen pro procesory 68040 a 68060.

    Samotné nakopírování příslušeného souboru provedete zápisem copy lha_68020 c:lha (11)

    Tento zápis kopíruje soubor lha_68020 do systémového adresáře c: pod názvem lha (tedy proběhne přejmenování výchozího názvu souboru). Kopírujte jen verzi, která se určená pro váš procesor, kopírováním jiné verze si zakládáte na problémy.

    Touto, na první pohled komplikovanou, operací lze trvale do systému začlenit utilitu lha, kterou můžete kdykoli později používat pro jakoukoli komprimaci či dekomprimaci souborů a složek.

    Ještě si můžete zjistit, jakou máte verzi „lháčka“. To provedete příkazem version c:lha (12).
    Jak dekomprimovat lha archivy

    Nyní lze lha používat velmi jednoduše. Stačí spustit AmigaDos a do něj napsat

    Lha x NázevArchivu.lha – archiv se rozbalí na místě, kde momentálně jste

    nebo

    lha x NázevArchivu.lha ram: – archiv se rozbalí do ramdisku

    nebo

    lha x NázevArchivu.lha ram:MujAdresar/ archiv se rozbalí do ramdisku do adresáře MujAdredar. Pokud adresář neexistuje, utilita lha si jej vytvoří. Při rozbalování do adresáře je vždy nezbytné zápis ukončit lomítkem.
    Jak vytvářet lha archivy

    Archiv lze vytvořit zápisem

    lha a MistoANazevNovehoArchivu MistoKtereChciArchivovat/#?

    Příklad 1: lha a ram:ZalohaSystemu sys:#? vytvoří v ramdisku nový soubor s názvem ZalohaSystemu.lha, v kterém bude archivováno vše na systémovém disku sys:. Zápis sys:#? znamená zarchivování všech soborů a neprázdných adresářů. #? odpovídá písíčkovému zápisu *.*.

    Příklad 2: lha a ram:Turrican dh1:games/turrican/#? vytvoří v ramdisku archiv Turrican.lha, který bude obsahovat všechny soubory a neprázdné adresáře nacházející se na uvedeném místě, tedy na dh1:games/turrican/.

    Bohužel pokud by v umístění byly prázdné adresáře, nebudou do archivu přidány. Přidání prázdných adresářů lze docílit přepínačem -e a přepínačem -r, tedy výsledný zápis vypadá takto: lha -e -r a ram:Turrican dh1:games/turrican/#?, nicméně zrovna ve whdload archivu Turricana prázdné adresáře nejsou.

    Přehled některých užitečných přepínačů:
    • -e archivace prázdných adresářů;
    • -x zachování názvů cest;
    • -r zpracování archivu vzestupně podle názvu;
    • -Qh velikost Huffmanova bufferu, např. Qh64;
    • -b velikost I/O bufferu;
    • -V multivolume archivy (funguje do velikosti jedné diskety?).

    Po nainstalování funkčního systému (Workbenche) vůbec není od věci vytvořit si lha zálohu za pomoci výše uvedených příkazů. Pokud se se systémem cokoli stane, stačí disk zformátovat (quickformat), nastartovat systém z diskety s podporou cf karet a systém rozbalit na původní partition. Ušetříte si tím spoustu času. Zálohu celého systému lze dosáhnout již zmíněným zápisem lha -e -x -r a cf0:ZalohaSystemu sys:#?.

    Po vytvoření archivu je užitečné provést test, zda se archiv vytvořil správně. Toho lze dosáhnout příkazem lha t Cesta:NazevArchivu.lha.
    Příkazem lha t ZalohaSystemu.lha jsem právě otestoval, zda je archiv v pořádku.

    ​Příkazem lha t ZalohaSystemu.lha jsem právě otestoval, zda je archiv v pořádku.


    Pokud byste prováděli rozbalování většího archivu častěji, lze rozbalování risknout přepínačem -q, který nebude vypisovat průběh rozbalování (nebo i komprimace) na obrazovku, čímž se proces dekomprimace i komprimace výrazně zrychlí (cca na 1/4 času). Nicméně je zde riziko, že v případě chyby nebudete upozorněni.

    Multivolumové archvivy v posledních verzích lha příliš dobře nefungují. Je ověřeno, že multivolumový archiv se dá spolehlivě vytvořit ve verzi lha 1.5. Místo multivolumových archivů spíše doporučuji používat HJSplit.
    Lha ve Windows
    Pakovací algoritmus lha je dostupný pro Windows i jiné platformy. Po spuštění instalátoru se lha „nainstaluje“ do C:\Program Files (x86)\GnuWin32\bin

    Je rozumné odsud soubor lha.exe nakopírovat do C:\Windows\System32, protože pak stačí kdykoli vyvolat cmd a komprimovat/dekomprimovat přímo v cmd.
    Použití Lha ve Windows 10.

    ​Použití Lha ve Windows 10.


    Lha podporu lze taktéž doinstalovat do TotalCommanderu, pak můžete do lha archivů přistupovat přímo z vašeho oblíbeného správce souborů.
    Doinstalováním doplňku do Total Commanderu lze vstupovat do lha archivů.

    ​Doinstalováním doplňku do Total Commanderu lze vstupovat do lha archivů.


    A jestli používáte na Windows Directory Opus, podpora lha archivů je dlouhodobě součástí Opusu, aniž by bylo potřeba cokoli dodatečně instalovat.
    Directory Opus na PC pracuje s lha soubory nativně.

    ​Directory Opus na PC pracuje s lha soubory nativně.


    Lha soubory lze ve Windows rozbalit např. i 7zipem.
    Rozbalení lha archivu v oblíbeném 7zipu.

    ​Rozbalení lha archivu v oblíbeném 7zipu.


    Jak pracovat s lzx archivy
    Lzx je kompresní metoda, která umožňuje sadu několika souborů spojit do jednoho bloku dat a teprve tento blok zkomprimovat. Tato velmi efektivní metoda se nazývá file merging, její účinnost je až 300% a ve své době byla považována za unikátní. Za komprimačním algoritmem lzx stojí pánové Jonathan Forbes a Tomi Poutanen, kteří tento algoritmus na amigu vyvinuli v polovině devadesátých let. Lzx bylo shareware, nicméně od roku 1997 byl uvolněn generický klíč, který zpřístupnil všechny funkce lzx všem uživatelům jako freeware. Komprimační utilitu lzx včetně generického klíče lze stáhnout z Aminetu. Bohužel tato verze obsahuje chybu dekodování časových údajů i souborů vytvořených po roce 2000. Jako opravu lze použít tento patchovací balíček. Dalším zdrojem informací, včetně patchnuté verze lzx, je tato stránka.
    Lzx archiv lze vytvořit zápisem:
    lzx a ram:nazev_archivu sys:#?

    který lze číst takto: použij lzx (lzx) pro komprimaci (a), výsledek ulož do souboru v (např. ram:nazev_archivu) a do tohoto archivu zařaď vše, co se nachází na místě (např.: sys:#?).

    Pokud by se jednalo o komprimaci jen určitého adresáře, poslední parametr bude vypadat takto: dh1:games/turrican/#?

    Lzx osahuje množství užitečných přepínačů:
    • -Qf zrychlí kompresi (spotřebuje více RAM);
    • -9 je maximální komprese (-0 – nekomprimuje, -1 – min. komprese, -2 výchozí, -3 – vyšší účinnost, -9 – maximální účinnost. Tento přepínač lze nastavit jen u lzx pro procesory 68020 a vyšší (tedy přepínač nefunguje v základní verzi pro 68000);
    • -bo změní velkost výstupního bufferu. Má vliv na archivaci i dearchivaci a jeho výchozí velikost je 64 Kb. Při de/kompresi určuje velikost zásobníku, po jejíž dosažení se data zapíší na disk. Zápis ne např. -bo256;
    • -q tichý režim, údaje se nevypisují na obrazovku;
    • -r prohledávání všech adresářů a zpracování jejich cest (tato volba automaticky obsahuje -x, které tím tedy není nutné zapisovat);
    • -x zachování adresářové cesty;
    • -e archivuj prázdné adresáře.

    Skutečný zápis může vypadat takto:

    lzx -r -e -Qf -9 -q a ram:turrican dh1:games/turrican/#?
    Rozbalení lzx archivu lze provést zápisem:


    Lzx x CoChciRozbalit KamToChciRozbalit

    tedy např. lzx x ram:turrican.lzx games:Turrican/Turrican1/

    Jestliže bude součástí archivu i informace o zabaleném adresáři, je lepší v zápise odebrat poslední část, tedy:

    tedy např. lzx x ram:turrican.lzx games:Turrican/

    Dále doplním, že přepínač -e zaarchivuje i prázdné adresáře (pokud v umístění existují). Při rozbalování prázdných adresářů se zobrazuje chyba, nicméně nic není špatně, je to jen rozbalení prázdného adresáře.
    Lzx umí komprimovat i prázdné adresáře, bohužel při rozbalování u nich hlásí chybu.

    ​Lzx umí komprimovat i prázdné adresáře, bohužel při rozbalování u nich hlásí chybu.


    Jak rozbalit ZIP archivy

    Především whdload hry jsou zabaleny v klasickém zipu. Pokud byste je chtěli rozbalovat přímo na amize, použijte unzip. Tento balíček stačí rozbalit např. do ram disku a odtud nakopírovat unzip do systémového adresáře c:

    Shrnutí příkazů:

    Unzip NazevArchivu.zip – rozbalí soubory v místě, kde se nachází archiv

    Unzip NazevArchivu.zip -d ram: – rozbalí archiv do ram disku

    Nebo

    Unzip NazevArchivu.zip -d dh1:games/Turrican – rozbalí archiv do dh1:games/Turrican
    Rozbalení zip archivu za pomoci Unzipu.

    ​Rozbalení zip archivu za pomoci Unzipu.


    Shrnutí příkazů jednotlivých komprimačních utilit
    • Příklad komprimace: lha -r a ram:nazev_archivu ram:jmeno_archivovaneho_adresare/#?
    • Příklad dekomprimace: lha x ram:nazev_archivu ram:jmeno_destinace/
    • příklad komprimace: lzx -r -e -Qf -9 -q a ram:nazev_archivu ram:adresar_archivovat/#?
    • příklad dekomprimace: lzx x cesta_a_nazev_archivu cesta_kam_dearchivovat/
    • Příklad dekomprese: unzip CoChciRozbalit -d KamToChciRozbalit (lomítko se konec nedává)

    • Solaris104
      #2
      Solaris104 komentoval
      Editace komentáře
      Díky za článek, já mám lha, lzx a další unpackery nakonfigurované ve FileMasteru na jedno kliknutí. Na PC používám pluginy do TotalCommanderu.

    • Dedy
      #3
      Dedy komentoval
      Editace komentáře
      Fajn článek, taky to mám v DOpusu. Jeden klik a vidím celý archiv, druhým klikem kopíruji co chci a kam chci

    • Cyberian
      #4
      Cyberian komentoval
      Editace komentáře
      Pěkný článek
      DOpus mám takto:
      - Roletka "AmigaDOS" příkaz: lha x {f} RAM:
      - flags: "Do all files", "output window"

      Funguje to i při označení více lha archivů. Vybaluje to do RAMky
    Přidávání komentářů není v této časti diskusního fóra bez přihlášení možné, nebo zde nejsou povoleny.

Nejnovější články

Sbalit

  • Používání komprimačních utilit lha, lzx a unzip
    vytvořil DaMi
    I na amize se z důvodu úspory diskového prostoru nebo snadné manipulace s většími adresáři používají komprimační utility. Většina dostupných archivů je vytvořena v lha, některé v lzx a při přenosu dat z pc do amigy často narazíte i na klasický zip.

    Komprimační utilita Lha se v amize používá nejdelší dobu, přičemž za jejím rozšířením stojí nejenom to, že byla jedna z prvních, ale především její open source licence. ...
    15.09.2021, 21:47:10
  • Infinity Music Player (IMP)
    vytvořil DaMi
    Co se stane, když spojíte přehrávání modulů s chatováním? Vznikne IMP (Infinity Music Player). IMP je moderní aplikace, kterou lze používat na všech amigách připojených k internetu. Ano, moduly se stahují z internetu, což je kupodivu velmi rychlé i na základních amigách s trochou fastky. Kromě přehrávání modulů lze na stejné obrazovce i chatovat s aktuálně připojenými uživateli.
    ...
    11.08.2021, 17:35:21
  • Spellbound Dizzy
    vytvořil Solaris104
    Hra Spellbound Dizzy je v pořadí pátý díl s neposedným vajíčkem. Kouzelník Zaks tentokrát uvěznil rodinné příslušníky v rozsáhlém podzemí. Dizzy musí za pomoci kouzelníka Thea všechny osvobodit.

    Nejprve musí najít nějaký osobní předmět každé postavy a ten zanést kouzelníkovi Theovi. Také je nutné sbírat hvězdičky. Na rovinu musím říct, že tento díl Dizzyho patří k těm těžším. Ve hře se vyskytují skryté hvězdičky a dokonce i tajné...
    02.08.2021, 15:43:19
  • Project-X
    vytvořil Solaris104
    Když se řekne Project-X, tak se každému Amigistovi vybaví v paměti nádherná střílečka. Tu vydala v roce 1992 legendární firma Team 17. Ta se proslavila nejen hrou Project-X, ale tituly jako Super Frog, serií Alien Breed, Body Blows nebo Worms.




    Na rovinu musím říct, že Project-X je pekelně těžká střílečka. Přiznám se, že jsem ji dohrál až po roce tvrdého tréningu. Jak bylo na Amize zvykem, hráč musel hru projít na jeden zátah od začátku...
    01.07.2021, 07:45:16
  • One Step Beyond
    vytvořil Solaris104
    One Step Beyond je velmi pěkná logická hra. Jde o pokračování úspěšné hry Pushover, ve které jste ovládali malinkatého mravence. Ten shazoval kostky domina. Po shození kostky domina musely postupně spadnout nejrůznější kostky a určitá kostka jako poslední. V pokračování One Step Beyond budete ovládat pejska Colina. Ten se představí v parádním animovaném intru, kde hraje joystickem právě hru Pushover .



    Colin má moc rád křupky "Quavers". Ve...
    01.06.2021, 13:33:32
  • Grafické karty pro Sam440ep-flex v roce 2021
    vytvořil sailor
    1. Úvod

    V letošním roce jsem si pořídila Sam440ep-flex. Vlastně to byl jen takový nápad - pořídit si starší AmigyNG, tedy hlavně Sam440 a AmigaOne a zkusit, jak si stojí dnes.
    Sam440ep-flex jsem koupila od kolegy na Morph.zone. Bohužel až po brexitu, takže mi vyměřili DPH i mastné clo. Prostě EU byrokrati. No, ale Sam dorazil rychle a v pořádku, v hezké case, ze které jsem ho hned vyndala a octl se tak nahý na testbedu.



    Sam440ep-flex je z roku 2009,...
    26.05.2021, 21:23:48

Populární tagy v článcích

Sbalit

a500 (4) a1200 (5) akce (5) amiga (14) artway (3) bytefest (3) dizzy (9) doom (2) furia (5) game (3) hardware (5) hra (3) informace o provozu (3) internet (4) joystick (4) kickstarty (3) morphos (4) mys (2) outro (3) pfs3 (2) scandoubler (3) srazy (3) terrible fire (3) usb (3) winuae (6)
Zpracovávám...
X