pax ( zkratka pro portable a rchive e x change , dosl. "portable archive exchange") je archivní nástroj vytvořený POSIX a definovaný ve standardu POSIX.1-2001 [1] . Příkaz call a jeho struktura je sjednocením a sjednocením tar a cpio .
pax má čtyři hlavní režimy, které jsou určeny kombinací přepínačů -r ("čtení" - čtení) -w ("zápis" - zápis).
Následující tabulka shrnuje hlavní režimy provozu:
Volba | Režim | Popis |
---|---|---|
seznam | vypíše obsah archivu, aniž by cokoliv měnil nebo extrahoval. | |
-r | číst | čte a extrahuje obsah archivu |
-w | napsat | vytvoří archiv nebo jej doplní soubory |
-rw | "kopírovat" | čte a kopíruje soubory a adresářovou strukturu do zadaného adresáře |
Příklady:
Zobrazení obsahu archivu:
Extrahujte obsah archivu do aktuálního adresáře:
pax -r <archiv.tarVytvořte archiv aktuálního adresáře:
Při použití ve stylu cpio lze příkaz find použít k zobrazení seznamu souborů, které mají být archivovány:
Kopírování aktuálního adresáře do jiného umístění:
Cílový adresář musí být vytvořen předem.
pax lze použít podobně jako cpio nebo tar . Syntaxí pro cpio je získání seznamu souborů ze standardního vstupu ( stdin ), při archivaci, nebo již existujícího archivu při zobrazení obsahu nebo rozbalení souborů:
nalézt. -hloubka -tisk | pax -wd > archive.tara
pax -r <archiv.tarrespektive.
Tyto příkazy je také možné volat stejným způsobem jako tar :
pax -wf archive.tar .a
pax -rf archive.tarA pro přehlednost a úplnost:
Výpis souborů z archivu:
a režim "kopírovat":
pax -rw . archiv_dirVolba -f vám umožňuje určit, se kterým archivem se má pracovat, namísto zápisu do stdout nebo čtení stdin . Použití volby -d s find zabrání procházení adresářových stromů pax , protože to bude provedeno v find
Většina implementací pax poskytuje volbu -z ( gzip ) a -j ( bzip2 ) pro kompresi. Tato možnost však není normou předepsána. Pax nemůže rozšířit komprimované archivy.
Příklad pro rozbalení archivu gzip:
pax -rzf archive.tar.gzDíky možnosti používat pax ve stylu cpio je možné použít nějaký jiný komprimační program, jako je xz :
pax -w . | xz > archive.tar.xza zobrazit obsah xz-archivu:
xzcat archive.tar.xz | paxOd září 2009 verze pax obsažené ve většině distribucí Linuxu a BSD (pax [2] ) podporují následující formáty, povolené s volbou -x :
Je důležité, že samotný formát pax není podporován stávající verzí pax. Některé implementace, jako je Heirloom pax, podporují perspektivní formáty [3] včetně samotného formátu pax.
pax podporuje možnost vytvářet vícesvazkové archivy . Po dosažení konce svazku se zobrazí následující zpráva:
Pozornost! pax potřebuje změnit svazek archivu. /dev/fd0 připraven pro svazek: 2 V případě potřeby načtěte další položku úložiště (disk). a ujistěte se, že je povolen zápis. Chcete-li pokračovat, zadejte „y“, "." pro ukončení pax nebo "s" pro přepnutí na nové zařízení. Pokud nemůžete změnit úložný prvek (disk), zadejte "s" Je zařízení připraveno a připojeno? >Při obnově z vícesvazkového archivu si pax vyžádá další úložný prvek stejným způsobem, když je dosaženo konce úložného prvku před dosažením konce archivu.
Přestože byl v roce 2001 standardizován IEEE, od roku 2010 se pax těší relativně malé popularitě.
pax musí být přítomen na všech systémech kompatibilních s Linux Standard Base od verze 3.0 (vydáno 6. července 2005), [4] ale stále jej ve výchozím nastavení poskytuje jen málo distribucí Linuxu . Většina distribucí však obsahuje pax jako samostatný balíček.
pax je také přítomen ve Windows NT , kde je omezen na archivy souborů (páska není podporována). [5] Poté byl přesunut do subsystému Interix . Vytváření a obnovování Win32 ACL není podporováno. [6]
Balíčky zpracované instalačním programem OS X jsou často zabaleny do souboru Archive.pax.gz, který lze číst pomocí nástroje pax. [7]
Archivní formáty | |
---|---|
Pouze archivace | |
Pouze komprese | |
Archivace a komprese | |
Balení a distribuce softwaru |