A 7-Zip rejtett parancssori kapcsolói, amiket ismerned kell

A digitális világban az adatok kezelése, tárolása és továbbítása mindennapos feladat. Ehhez elengedhetetlen a hatékony archiválás és tömörítés. A 7-Zip egy ingyenes, nyílt forráskódú fájlarchiváló, amely kiemelkedő tömörítési arányával és széles formátumtámogatásával vált az iparág egyik vezető eszközévé. Bár a legtöbben a grafikus felületét használják, a 7-Zip igazi ereje a parancssori felületében (CLI) rejlik. Ez az a pont, ahol az egyszerű felhasználók és a profik útjai elválnak.

Ebben a cikkben elmélyedünk a 7-Zip parancssori kapcsolóinak világában, különös tekintettel azokra, amelyek talán kevésbé ismertek, mégis elengedhetetlenek a haladó felhasználók számára. Ezek a „rejtett” opciók lehetővé teszik, hogy maximális kontrollt gyakoroljunk az archiválási folyamat felett, optimalizáljuk a teljesítményt, automatizáljunk komplex feladatokat, és növeljük az adatok biztonságát. Készülj fel, hogy új szintre emeld a 7-Zip használatát!

Miért érdemes a 7-Zip parancssort használni? Túl az egérkattintásokon.

Mielőtt belemerülnénk a részletekbe, tegyük fel a kérdést: miért bajlódjunk a parancssorral, ha van kényelmes grafikus felület? A válasz egyszerű: automatizálás, precizitás és hatékonyság. A parancssor lehetővé teszi, hogy:

  • Komplex feladatokat hajtsunk végre egyetlen paranccsal vagy szkripttel.
  • Ismétlődő feladatokat (pl. napi mentések) ütemezzünk.
  • Fájlokat szűrjünk, titkosítsunk és kezeljünk programozottan, emberi beavatkozás nélkül.
  • Távoli szervereken dolgozzunk, ahol gyakran csak parancssori hozzáférés áll rendelkezésre.

Az alapvető parancsok, mint az archívum hozzáadása (a), kicsomagolása (x vagy e), tartalmának listázása (l) vagy tesztelése (t) már ismertek lehetnek. Ezek a 7-Zip parancssori szintaxisának alapkövei:

7z <parancs> [kapcsolók...] <archívum_neve> [fájlok...]

A továbbiakban olyan kapcsolókat mutatunk be, amelyekkel valóban testre szabhatjuk a 7-Zip működését.

A tömörítés optimalizálása és finomhangolása: A `-m` kapcsoló és barátai

A 7-Zip kiemelkedő tömörítési arányának titka a konfigurálhatóságban rejlik. A -m (method) kapcsoló adja a legnagyobb rugalmasságot, lehetővé téve a tömörítési algoritmus és annak paramétereinek finomhangolását. Íme a legfontosabb al-kapcsolók:

Tömörítési szint: `-mx[N]`

Ez határozza meg a tömörítés mértékét és sebességét. Az N értéke 0 és 9 között lehet:

  • -mx0: Nincs tömörítés (csak tárolás, mint a ZIP Store). Gyors, de nagy fájlméret.
  • -mx1: Leggyorsabb tömörítés.
  • -mx5: Normál tömörítés (alapértelmezett GUI-ban).
  • -mx7: Maximális tömörítés.
  • -mx9: Ultra tömörítés. Ez a legjobb tömörítési arányt adja, de a leglassabb és a legtöbb memóriát igényli.

Példa: Ultra tömörítés alkalmazása

7z a -mx9 adatok.7z C:Dokumentumok*

Ez a parancs az összes fájlt a C:Dokumentumok mappából az adatok.7z archívumba helyezi, a lehető legmagasabb tömörítési szinttel.

Szótárméret: `-md{N}`

A szótárméret a tömörítési algoritmus által használt memória mérete. Nagyobb szótárméret jobb tömörítési arányt eredményezhet, különösen nagyméretű, ismétlődő mintázatokat tartalmazó fájlok esetén, de több RAM-ot fogyaszt és lassabbá teheti a tömörítési és kicsomagolási folyamatot is.

  • Értékét megadhatjuk bájtokban, kilobájtokban (k), megabájtokban (m) vagy gigabájtokban (g), pl. -md64m.
  • Gyakori értékek: 32m (alapértelmezett), 64m, 128m.

Példa: 128MB szótárméret használata

7z a -mx9 -md128m nagyfajlok.7z D:Projektek*

Ezt elsősorban nagy adatbázisok, naplófájlok vagy szoftvertelepítők archiválásakor érdemes bevetni.

Szilárd blokk méret: `-ms{N}`

A szilárd tömörítés (solid archiving) azt jelenti, hogy a 7-Zip az összes fájlt egyetlen adatblokként kezeli, ami jelentősen javíthatja a tömörítési arányt, különösen sok kis fájl esetén. Azonban van egy hátránya: ha egy fájl sérül, vagy csak egyetlen fájlt szeretnénk kinyerni az archívumból, az egész archívumot újra kell indexelni, ami lassabb lehet.

  • Az N értéke a szilárd blokk maximális méretét adja meg (pl. -ms4g – 4 GB).
  • A -ms=off kapcsolóval kikapcsolhatjuk a szilárd tömörítést.

Példa: 2GB-os szilárd blokk méret beállítása

7z a -ms2g -mx7 weboldal.7z C:inetpubwwwroot

Ez a parancs egy weboldal összes fájlját egyetlen, magas tömörítési arányú archívumba tömöríti, 2 GB-os szilárd blokk mérettel.

Többszálú feldolgozás: `-mmt{N}`

Modern processzorok esetén a többszálú feldolgozás (multi-threading) kulcsfontosságú a teljesítményhez. A -mmt kapcsolóval szabályozhatjuk, hány CPU magot használjon a 7-Zip a tömörítéshez.

  • -mmt: Engedélyezi a többszálú feldolgozást (alapértelmezett a GUI-ban).
  • -mmt=on: Ugyanaz, mint -mmt.
  • -mmt=off: Kikapcsolja a többszálú feldolgozást.
  • -mmt{N}: Meghatározza a használni kívánt szálak számát, pl. -mmt4.

Példa: 4 szál használata a tömörítéshez

7z a -mx7 -mmt4 videok.7z D:Videok

Ez gyorsabb tömörítést eredményezhet többmagos processzorokon.

Egyéb hasznos `-m` al-kapcsolók:

  • -mfb{N}: Fast Bytes (gyors bájtok száma). Befolyásolja a sebesség/tömörítés arányát.
  • -mlc{N}: Literális környezet (Number of Literal Contexts).
  • -mpass{N}: Passzok száma a tömörítőben.

Komplex tömörítési példa:

7z a -t7z -mx9 -md128m -ms4g -mmt=on -mfb256 -p"biztonsagos_jelszo" -mhe mentés_ultra.7z C:FontosAdatok

Ez a parancs ultra tömörítéssel, 128 MB szótármérettel, 4 GB-os szilárd blokkal, többszálú feldolgozással, fájlnév titkosítással és jelszóval hoz létre egy archívumot a C:FontosAdatok mappából.

Precíziós kicsomagolás és felülírási stratégiák: `-o` és `-ao`

Az archívumok kicsomagolása is több lehetőséget rejt magában, mint gondolnánk.

Kimeneti mappa: `-o{mappa_útvonal}`

Ez a kapcsoló viszonylag ismert, de elengedhetetlen a precíz kicsomagoláshoz. Meghatározza, hova kerüljenek a kicsomagolt fájlok.

Példa: Kicsomagolás egy adott mappába

7z x archívum.7z -oC:kicsomagolt_fajlok

Felülírási mód: `-ao{stratégia}`

Ez a kapcsoló rendkívül hasznos, ha már léteznek fájlok a kicsomagolási célmappában, és szeretnénk szabályozni, hogyan kezelje a 7-Zip a konfliktusokat.

  • -aoa (overwrite all): Mindig felülírja a meglévő fájlokat.
  • -aos (overwrite skip): Kihagyja azokat a fájlokat, amelyek már léteznek.
  • -aou (overwrite update): Felülírja a meglévő fájlokat, ha az archívumban lévő verzió újabb, és kicsomagolja az új fájlokat.
  • -aot (overwrite touch): Felülírja a meglévő fájlokat, ha az archívumban lévő verzió újabb.

Példa: Fájlok frissítése kicsomagoláskor

7z x frissites.7z -aou -oC:ProgramFilesAlkalmazas

Ez a parancs csak azokat a fájlokat fogja felülírni a célmappában, amelyek az frissites.7z archívumban újabbak, és hozzáadja azokat a fájlokat, amelyek eddig nem léteztek.

Fájlok szűrése és szelektálása: A beépített intelligencia

Gyakran előfordul, hogy egy nagy archívumból csak bizonyos fájlokat szeretnénk hozzáadni vagy kinyerni. A 7-Zip számos kapcsolót kínál a fájlok precíz szűrésére.

Fájlok bevonása: `-ir{minta}` (include)

A -ir kapcsolóval csak azokat a fájlokat válogathatjuk ki, amelyek megfelelnek egy adott mintának. A minta lehet helyettesítő karakteres (wildcard) vagy reguláris kifejezés (regex).

Példa: Csak JPG fájlok archiválása

7z a kepek.7z C:Fotok -ir"*.jpg"

Fájlok kizárása: `-xr{minta}` (exclude)

A -xr pont az ellenkezőjét teszi: kizárja azokat a fájlokat, amelyek megfelelnek a megadott mintának.

Példa: Minden fájl archiválása a log fájlok kivételével

7z a projekt.7z D:ProjektMappa -xr"*.log"

Több -ir és -xr kapcsolót is használhatunk egy parancsban.

Fájllisták használata: `-i@fájlnév` és `-x@fájlnév`

Ha a szűrni kívánt fájlok listája nagyon hosszú, vagy gyakran változik, létrehozhatunk egy egyszerű szöveges fájlt a bevonandó vagy kizárandó fájlnevekkel (soronként egy fájl), és azt hivatkozhatjuk a -i@ vagy -x@ kapcsolóval.

Példa: Fájlok archiválása egy listából

7z a valogatott.7z -i@C:listakbevonando_fajlok.txt

A bevonando_fajlok.txt tartalma valahogy így nézhet ki:

C:Projektdokumentumokjelentes.docx
C:Projektkepeklogo.png
C:Projektforrasmain.cpp

Biztonság és titkosítás a parancssorban

Az adatok biztonsága elsődleges fontosságú. A 7-Zip parancssorban is lehetőséget biztosít az archivált adatok titkosítására.

Jelszó megadása: `-p{jelszó}`

A legegyszerűbb módja az archívum védelmének, ha jelszóval látjuk el. A -p kapcsolóval adhatjuk meg a jelszót.

Fontos biztonsági megjegyzés: Ha a jelszót közvetlenül a parancssorban adjuk meg, az megjelenhet a rendszer előzményeiben (history), ami biztonsági kockázatot jelenthet. Kompromisszumos megoldásként a 7-Zip felkínálja, hogy interaktívan, jelszókérésre adjuk meg a jelszót, ha a -p kapcsoló után nem írunk semmit.

Példa: Jelszóval védett archívum készítése

7z a titkos.7z C:Privat -p"azEnTitkosJelszavam"

Fájlnév titkosítás: `-mhe`

Alapértelmezés szerint, ha egy archívumot jelszóval védünk, a fájlok tartalma titkosított, de a fájlnevek láthatóak maradnak. A -mhe kapcsolóval a fájlneveket is titkosíthatjuk, további védelmi réteget biztosítva. Ez csak a 7z archívum formátumban érhető el.

Példa: Jelszó és fájlnév titkosítás

7z a -mhe -p"szupertitkos" dokumentumok.7z C:SzemelyesAdatok

Haladó archívumkezelés: Frissítés, felosztás és törlés

A parancssor nem csak új archívumok létrehozására és kicsomagolására alkalmas, hanem meglévő archívumok kezelésére is.

Archívum frissítése: `u` parancs és `-up` kapcsoló

Az u parancs (update) lehetővé teszi egy már létező archívum tartalmának frissítését anélkül, hogy az egészet újra kellene tömöríteni. Ez különösen hasznos nagyméretű backup archívumoknál.

A -up kapcsolóval részletesebben szabályozhatjuk a frissítés viselkedését, kombinálva különböző al-módokat:

  • -upu (update): Hozzáadja az új fájlokat és frissíti a módosultakat.
  • -upd (delete): Törli azokat a fájlokat az archívumból, amelyek már nem léteznek a forrásban.
  • -upt (touch): Csak a módosult fájlokat frissíti, nem töröl és nem ad hozzá újat.
  • -upn (new): Csak új fájlokat ad hozzá.
  • -upq (existing): Csak a meglévő fájlokat frissíti.

Példa: Napi backup frissítése

7z u -mx7 -upd -aou napi_backup.7z C:SzerverAdatok

Ez a parancs frissíti a napi_backup.7z archívumot: hozzáadja az új fájlokat, frissíti a módosultakat, és törli azokat, amelyek már nincsenek a C:SzerverAdatok mappában.

Archívum felosztása: `-v{méret}` (volume size)

Nagy archívumokat feloszthatunk kisebb részekre, ami praktikus lehet, ha CD-re, DVD-re akarjuk írni, vagy e-mailben akarjuk elküldeni. A -v kapcsolóval adhatjuk meg az egyes részek maximális méretét (pl. -v1440k flopira, -v700m CD-re).

Példa: Archívum felosztása 500MB-os részekre

7z a -v500m nagyfajl.7z D:NagyProjekt

Ennek eredményeként nagyfajl.7z.001, nagyfajl.7z.002 stb. fájlok jönnek létre.

Forrásfájlok törlése: `-sdel` (delete source files)

Ez egy rendkívül hasznos, de óvatosan használandó kapcsoló. A -sdel utasítja a 7-Zip-et, hogy sikeres tömörítés után törölje a forrásfájlokat.

Példa: Fájlok archiválása és azonnali törlése

7z a -sdel archiv.7z C:Tempregi_fajlok*

Ezzel a paranccsal archiválhatjuk a C:Tempregi_fajlok mappában lévő összes fájlt, majd a 7-Zip automatikusan törli az eredeti fájlokat.

Önkicsomagoló archívumok (SFX) készítése a parancssorból

Az önkicsomagoló archívumok (SFX) kényelmes megoldást jelentenek, mivel a felhasználóknak nincs szükségük archívumkezelő szoftverre a tartalom kibontásához. A 7-Zip parancssorban is képes ilyeneket készíteni.

SFX modul hozzáadása: `-sfx`

Ezzel a kapcsolóval egy végrehajtható SFX modult illesztünk az archívumhoz, amely tartalmazza a kicsomagoláshoz szükséges kódot.

Példa: SFX archívum készítése

7z a -sfx telepito.exe C:ProgramFajlokSzoftver

Ez létrehoz egy telepito.exe fájlt, amit bárki futtathat a program kicsomagolásához.

Dialógusablakok elrejtése: `-sds` és `-spd`

Az automatizált telepítők vagy szkriptek esetén gyakran előnyös, ha az SFX archívum csendesen fut, felhasználói beavatkozás nélkül.

  • -sds (don’t show start dialog): Elrejti az SFX futtatásakor megjelenő kezdeti párbeszédpanelt.
  • -spd (don’t show progress dialog): Elrejti a kicsomagolási folyamat előrehaladását mutató ablakot.

Példa: Csendes SFX telepítő készítése

7z a -sfx -sds -spd csendes_telepito.exe C:Alkalmazas

Ez egy olyan .exe fájlt hoz létre, amely futtatásakor automatikusan, mindenféle felhasználói felület nélkül kicsomagolja a tartalmát. Ideális szkriptekbe ágyazva.

Kimeneti vezérlés és naplózás: Amikor tudni akarjuk, mi történik

A parancssori eszközök gyakran adják a legtöbb információt a futásukról, ha tudjuk, hogyan kérdezzük le őket.

Kimeneti részletesség: `-bb{szint}` (show output progress level)

Ez a kapcsoló szabályozza, milyen részletes legyen a 7-Zip kimenete a konzolon:

  • -bb0: Nincs kimenet (teljesen csendes mód).
  • -bb1: Normál kimenet (alapértelmezett).
  • -bb2: Részletes kimenet (minden egyes fájl feldolgozását kiírja).
  • -bb3: Rendkívül részletes kimenet, hibakeresésre is alkalmas.

Példa: Részletes kimenet egy archívum lista parancsnál

7z l -bb2 archívum.7z

Technikai információk: `-slt` (show technical information)

Ha részletes technikai adatokra van szükségünk egy archívumról (pl. CRC-ellenőrző összegek, tömörítési arány, fájlméretek), a -slt kapcsoló rendkívül hasznos.

Példa: Részletes technikai adatok listázása

7z l -slt archívum.7z

Batch mód: `-ba` (batch mode)

A -ba kapcsoló biztosítja, hogy a 7-Zip ne kérjen interakciót a felhasználótól (pl. jelszókérés, felülírási megerősítés). Ez elengedhetetlen szkriptek és automatizált feladatok esetén, ahol a programnak emberi beavatkozás nélkül kell futnia.

Példa: Csendes kicsomagolás batch módban

7z x -ba -p"jelszo" mentés.7z -oC:Temp

Gyakorlati tippek és automatizálás: Ahol a parancssor ereje igazán megmutatkozik

A bemutatott kapcsolók kombinálásával szinte bármilyen archiválási feladatot megvalósíthatunk. Néhány tipp az automatizáláshoz:

  • Windows Batch szkriptek: Hozzon létre .bat fájlokat a gyakran ismétlődő feladatokhoz.
    @echo off
    set "SOURCE_DIR=C:NapiMentés"
    set "ARCHIVE_DIR=D:Archivumok"
    set "ARCHIVE_NAME=napi_mentes_%date:~0,4%-%date:~5,2%-%date:~8,2%.7z"
    set "PASSWORD=BiztosJelszo123"
    
    echo Archivalas inditasa: %ARCHIVE_NAME%
    7z a -t7z -mx7 -md64m -mmt=on -mhe -p"%PASSWORD%" "%ARCHIVE_DIR%%ARCHIVE_NAME%" "%SOURCE_DIR%" -xr!*.tmp -xr!*.bak
    if %errorlevel% equ 0 (
        echo Archivalas sikeres.
    ) else (
        echo Hiba az archivalas soran!
    )
    pause
  • Linux/macOS Shell szkriptek: Hasonlóan, .sh szkriptekkel is automatizálhatók a feladatok.
  • Feladatütemező (Task Scheduler / Cron): Használja a rendszere beépített ütemezőjét a szkriptek rendszeres futtatására (pl. éjszakai backup).

Ezekkel az eszközökkel a 7-Zip parancssor valóban a mindennapi rendszerfelügyelet és adatkezelés elengedhetetlen részévé válik.

Összefoglalás

A 7-Zip egy rendkívül sokoldalú és hatékony eszköz, amelynek valódi potenciálja a parancssori felületen keresztül aknázható ki. Bár a grafikus felület kényelmes, a bemutatott rejtett parancssori kapcsolók megismerésével és alkalmazásával a tömörítés, archiválás és fájlkezelés terén új szintre léphetünk. Legyen szó automatizált backupokról, komplex fájlszűrésről, biztonságos titkosításról vagy önkicsomagoló archívumok készítéséről, a 7-Zip parancssor mindehhez biztosítja az eszközöket.

Ne féljünk kísérletezni! A 7-Zip dokumentációja (a 7z --help parancs is sokat segíthet) részletes leírást ad az összes kapcsolóról. A parancssorban rejlő hatalom birtokában sokkal hatékonyabban és precízebben kezelhetjük digitális adatainkat. Lépjünk túl az alapokon, és váljunk a 7-Zip mestereivé!

Leave a Reply

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük