draft: tar
This commit is contained in:
@@ -247,3 +247,4 @@
|
||||
{"ts":"2026-05-16 17:11:25","url":"/informatique/linux/system/dossiers-remarquables/dev","ref":"","ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15 (Applebot/0.1; +http://www.apple.com/go/applebot)"}
|
||||
{"ts":"2026-05-16 17:11:37","url":"/informatique/le-wifi-du-raspberry-pi","ref":"","ua":"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"}
|
||||
{"ts":"2026-05-16 17:17:06","url":"/article","ref":"https://www.abonnel.fr/article?idx=informatique%3Ainternet%3Amarque-ta-page%3Ainformatique%3Alogiciels","ua":"Mozilla/5.0 (Linux; Android 7.0;) AppleWebKit/537.36 (HTML, like Gecko) Mobile Safari/537.36 (compatible; PetalBot;+https://webmaster.petalsearch.com/site/petalbot)"}
|
||||
{"ts":"2026-05-16 17:18:40","url":"/informatique/se/freedos","ref":"","ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36"}
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"title": "tar",
|
||||
"slug": "tar",
|
||||
"_updated_at": "2026-05-16 17:19:22"
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
# tar
|
||||
|
||||
## Introduction
|
||||
|
||||
`tar` (*tape archive*) est l'outil standard sous Linux pour regrouper plusieurs fichiers et dossiers dans une seule archive, éventuellement compressée. Avant d'entrer dans les commandes, voici les options à connaître :
|
||||
|
||||
- `c` : créer (*create*) une archive
|
||||
- `x` : extraire (*extract*) une archive
|
||||
- `t` : lister (*table*) le contenu
|
||||
- `v` : mode verbeux (*verbose*)
|
||||
- `f` : indique le nom du fichier archive (*file*)
|
||||
- `z` : compression gzip
|
||||
- `j` : compression bzip2
|
||||
- `J` : compression xz
|
||||
|
||||
## Comparaison des formats de compression
|
||||
|
||||
La taille d'une archive `tar` dépend fortement de l'algorithme de compression. Exemple avec un dossier `html` contenant des fichiers **HTML**, **CSS** et **JS** :
|
||||
|
||||
| Archive | Taille (octets) |
|
||||
| -------- | --------------- |
|
||||
| tar | 40 960 |
|
||||
| tar.gz | 6 200 |
|
||||
| tar.bz2 | 6 003 |
|
||||
| tar.xz | 5 656 |
|
||||
|
||||
En règle générale : `gzip` est le plus rapide, `xz` offre le meilleur taux de compression, `bzip2` se situe entre les deux.
|
||||
|
||||
## tar : archiver sans compresser
|
||||
|
||||
Créer une archive à partir d'un ou plusieurs fichiers :
|
||||
|
||||
```
|
||||
tar cvf archive.tar fichier1 fichier2…
|
||||
```
|
||||
|
||||
Créer une archive à partir d'un dossier :
|
||||
|
||||
```
|
||||
tar cvf archive.tar dossier/
|
||||
```
|
||||
|
||||
> **Attention** : le chemin passé en argument est conservé tel quel dans l'archive. Pour archiver le contenu sans inclure le chemin parent, utilisez `-C` :
|
||||
>
|
||||
> ```
|
||||
> tar cvf archive.tar -C /chemin/parent dossier
|
||||
> ```
|
||||
|
||||
Extraire les fichiers d'une archive :
|
||||
|
||||
```
|
||||
tar xvf archive.tar
|
||||
```
|
||||
|
||||
Lister le contenu d'une archive :
|
||||
|
||||
```
|
||||
tar tvf archive.tar
|
||||
```
|
||||
|
||||
## tar.gz : compression gzip
|
||||
|
||||
Toutes les commandes utilisent l'option `z`.
|
||||
|
||||
Créer une archive compressée à partir de fichiers ou d'un dossier :
|
||||
|
||||
```
|
||||
tar zcvf archive.tar.gz fichier1 fichier2…
|
||||
tar zcvf archive.tar.gz dossier/
|
||||
```
|
||||
|
||||
Créer une archive **sans** les informations de propriétaire et de groupe (utile pour produire une archive portable destinée à un autre système) :
|
||||
|
||||
```
|
||||
tar zcvf archive.tar.gz . --owner=0 --group=0
|
||||
```
|
||||
|
||||
> Pensez à documenter les droits attendus à l'extraction (par exemple via un script post-déploiement ou un `chown` explicite).
|
||||
|
||||
Extraire :
|
||||
|
||||
```
|
||||
tar zxvf archive.tar.gz
|
||||
```
|
||||
|
||||
Lister le contenu :
|
||||
|
||||
```
|
||||
tar ztvf archive.tar.gz
|
||||
```
|
||||
|
||||
Supprimer un fichier dans l'archive :
|
||||
|
||||
```
|
||||
tar --delete -f archive.tar.gz chemin/du/fichier
|
||||
```
|
||||
|
||||
## tar.xz : compression xz
|
||||
|
||||
Utilise l'option `J` (le meilleur taux de compression, mais le plus lent).
|
||||
|
||||
Créer une archive à partir de fichiers ou d'un dossier :
|
||||
|
||||
```
|
||||
tar Jcvf archive.tar.xz fichier1 fichier2…
|
||||
tar Jcvf archive.tar.xz dossier/
|
||||
```
|
||||
|
||||
Extraire :
|
||||
|
||||
```
|
||||
tar Jxvf archive.tar.xz
|
||||
```
|
||||
|
||||
## tar.bz2 : compression bzip2
|
||||
|
||||
Utilise l'option `j` (minuscule).
|
||||
|
||||
Créer une archive à partir de fichiers ou d'un dossier :
|
||||
|
||||
```
|
||||
tar jcvf archive.tar.bz2 fichier1 fichier2…
|
||||
tar jcvf archive.tar.bz2 dossier/
|
||||
```
|
||||
|
||||
Lister le contenu (filtré sur les fichiers `.txt`) :
|
||||
|
||||
```
|
||||
tar tvf archive.tar.bz2 '*.txt'
|
||||
```
|
||||
|
||||
Extraire :
|
||||
|
||||
```
|
||||
tar jxvf archive.tar.bz2
|
||||
```
|
||||
|
||||
## Récapitulatif
|
||||
|
||||
| Format | Création | Extraction | Lister |
|
||||
| --------- | -------------- | -------------- | -------------- |
|
||||
| tar | `tar cvf` | `tar xvf` | `tar tvf` |
|
||||
| tar.gz | `tar zcvf` | `tar zxvf` | `tar ztvf` |
|
||||
| tar.bz2 | `tar jcvf` | `tar jxvf` | `tar jtvf` |
|
||||
| tar.xz | `tar Jcvf` | `tar Jxvf` | `tar Jtvf` |
|
||||
|
||||
Sur les versions récentes de `tar`, vous pouvez aussi omettre l'option de compression : `tar xvf archive.tar.gz` fonctionne, le format étant détecté automatiquement.
|
||||
Reference in New Issue
Block a user