From e6a3e5c6492053affa171f9472b0710f19831e9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9drix?= Date: Sat, 16 May 2026 19:19:22 +0200 Subject: [PATCH] draft: tar --- _logs/not_found.jsonl | 1 + .../draft_overlay.json | 5 + .../draft_overlay.md | 147 ++++++++++++++++++ 3 files changed, 153 insertions(+) create mode 100644 ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.json create mode 100644 ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.md diff --git a/_logs/not_found.jsonl b/_logs/not_found.jsonl index 569e1a5..cd567e2 100644 --- a/_logs/not_found.jsonl +++ b/_logs/not_found.jsonl @@ -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"} diff --git a/ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.json b/ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.json new file mode 100644 index 0000000..74f2af0 --- /dev/null +++ b/ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.json @@ -0,0 +1,5 @@ +{ + "title": "tar", + "slug": "tar", + "_updated_at": "2026-05-16 17:19:22" +} diff --git a/ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.md b/ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.md new file mode 100644 index 0000000..ce119cd --- /dev/null +++ b/ce662705-eb9b-47b1-90f3-19e3c3633ed0/draft_overlay.md @@ -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. \ No newline at end of file