pax ( acronim pentru schimbarea e x de arhivă portabilă , lit. „schimb de arhive portabil”) este un utilitar de arhivă creat de POSIX și definit în standardul POSIX.1-2001 [ 1] . Comanda de apel și structura sa este o unire și unificare a tar și cpio .
pax are patru moduri principale, care sunt determinate de combinația de comutatoare -r ("citire" - citire) -w ("scriere" - scriere).
Următorul tabel rezumă principalele moduri de funcționare:
Opțiune | Modul | Descriere |
---|---|---|
listă | scoate conținutul arhivei fără a modifica sau extrage nimic. | |
-r | citit | citește și extrage conținutul unei arhive |
-w | scrie | creează o arhivă sau o completează cu fișiere |
-rw | "copie" | citește și copiază fișierele și structura de directoare în directorul specificat |
Exemple:
afișați conținutul unei arhive:
Extrageți conținutul arhivei în directorul curent:
pax -r <arhiva.tarCreați o arhivă a directorului curent: atunci
când este utilizată în stilul cpio , comanda find poate fi folosită pentru a lista fișierele de arhivat:
Copierea directorului curent într-o altă locație:
directorul țintă trebuie creat în prealabil.
pax poate fi folosit în mod similar cu cpio sau tar . Sintaxa pentru cpio este de a obține o listă de fișiere de la intrarea standard ( stdin ), la arhivare sau o arhivă deja existentă, la afișarea conținutului sau la extragerea fișierelor:
găsi. -adâncime -imprimare | pax -wd > archive.tarși
pax -r <arhiva.tarrespectiv.
De asemenea, este posibil să apelați aceste comenzi în același mod ca tar :
pax -wf archive.tar .și
pax -rf arhiva.tarȘi de dragul clarității și completității:
Listarea fișierelor dintr-o arhivă:
și modul „copiere”:
pax -rw . archive_dirOpțiunea -f vă permite să specificați cu ce arhivă să lucrați, în loc să scrieți în stdout sau să citiți stdin . Utilizarea opțiunii -d cu find evită traversarea arborilor de directoare pax , deoarece acest lucru se va face în find
Majoritatea implementărilor pax oferă o opțiune -z ( gzip ) și -j ( bzip2 ) pentru compresie. Această posibilitate, însă, nu este prescrisă de standard. Pax nu poate mări arhivele comprimate.
Exemplu pentru extragerea unei arhive gzip:
pax -rzf archive.tar.gzDatorită capacității de a utiliza pax în stil cpio , este posibil să utilizați un alt program de compresie, cum ar fi xz :
pax -w . | xz > archive.tar.xzși afișați conținutul arhivei xz:
xzcat archive.tar.xz | paxDin septembrie 2009, versiunile de pax incluse în majoritatea distribuțiilor Linux și BSD (pax [2] ) acceptă următoarele formate, activate cu opțiunea -x :
Este important ca formatul pax în sine să nu fie acceptat de versiunea existentă de pax. Unele implementări, cum ar fi Heirloom pax, acceptă formate de perspectivă, [3] inclusiv formatul pax în sine.
pax acceptă capacitatea de a crea arhive cu mai multe volume . Când se ajunge la sfârșitul volumului, apare următorul mesaj:
Atenţie! pax trebuie să schimbe volumul arhivei. /dev/fd0 gata pentru volum: 2 Încărcați următorul element de stocare (disc) dacă este necesar și asigurați-vă că scrierea este activată. Introdu „y” pentru a continua, "." pentru a termina pax sau „s” pentru a comuta la un dispozitiv nou. Dacă nu puteți schimba elementul de stocare (disc), introduceți „s” Este dispozitivul gata și conectat? >La restaurarea dintr-o arhivă cu mai multe volume, pax solicită următorul element de stocare în același mod când se ajunge la sfârșitul elementului de stocare înainte de a ajunge la sfârșitul arhivei.
În ciuda faptului că a fost standardizat în 2001 de IEEE, din 2010 pax se bucură de o popularitate relativ mică.
pax trebuie să fie prezent pe toate sistemele compatibile cu Linux Standard Base începând cu versiunea 3.0 (lansată pe 6 iulie 2005), [4] dar încă puține distribuții Linux îl oferă implicit. Cu toate acestea, majoritatea distribuțiilor includ pax ca pachet separat.
pax este prezent și în Windows NT , unde este limitat la arhive de fișiere (banda nu este acceptată). [5] Apoi a fost mutat în subsistemul Interix . Crearea și restaurarea ACL-urilor Win32 nu este acceptată. [6]
Pachetele procesate de programul de instalare OS X sunt adesea ambalate într-un fișier Archive.pax.gz care poate fi citit cu utilitarul pax. [7]
Comenzi Unix | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
Formate de arhivare | |
---|---|
Doar arhivare | |
Doar compresie | |
Arhivare și compresie | |
Ambalare și distribuție software |