accueil > Compression et archivage > cpio

cpio : Créer et extraire des archives de fichiers

cpio est un utilitaire utilisé pour copier des fichiers dans une archive ou extraire des fichiers d'une archive. Il traite généralement une liste de fichiers reçue via un pipe et est utilisé pour la sauvegarde et la restauration, la copie de structures de répertoires, etc. Il peut effectuer diverses tâches d'archivage grâce à ses trois modes principaux (copie sortante, copie entrante, copie de chemin).

Aperçu

cpio fonctionne comme un archiveur orienté flux, lisant une liste de fichiers depuis l'entrée standard ou écrivant des archives sur la sortie standard. Cela offre une grande flexibilité lorsqu'il est utilisé avec d'autres commandes (par exemple, find) via un pipe.

Caractéristiques principales

  • Trois modes de fonctionnement principaux : copie sortante (-o), copie entrante (-i), copie de chemin (-p)
  • Traitement flexible de la liste de fichiers via pipe
  • Prise en charge de divers formats d'archive
  • Utilisé pour la sauvegarde, la restauration et la copie de structures de répertoires

Options principales

cpio nécessite une option pour spécifier le mode de fonctionnement et offre diverses options auxiliaires.

Modes de fonctionnement

Options générales

Commande générée :

Essayez de combiner les commandes.

Description:

`cpio` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Divers exemples d'utilisation de cpio exploitant ses trois modes principaux.

Archiver tous les fichiers du répertoire courant

find . -print0 | cpio -ov0 > archive.cpio

Génère une liste de tous les fichiers du répertoire courant avec la commande find, puis archive-la dans le fichier archive.cpio avec la commande cpio -ov. L'option -0 garantit le traitement sécurisé des noms de fichiers contenant des espaces.

Extraire des fichiers d'une archive

cpio -ivd < archive.cpio

Extrait tous les fichiers de l'archive archive.cpio dans le répertoire courant. L'option -d crée automatiquement les répertoires nécessaires.

Copier la structure d'un répertoire vers un autre emplacement

find . -depth -print0 | cpio -pd0v /new/directory

Copie tous les fichiers et la structure de répertoires du répertoire courant vers le chemin /new/directory. Le mode -p copie directement sans créer d'archive, -d crée des répertoires et -v affiche les détails.

Extraire uniquement les fichiers correspondant à un modèle spécifique de l'archive

cpio -ivd 'report*' < archive.cpio

Extrait uniquement les fichiers commençant par 'report' de archive.cpio. Les caractères génériques peuvent être utilisés.

Conseils et précautions

cpio est un outil puissant, mais il est important de maîtriser sa bonne utilisation.

Conseils utiles pour l'utilisation de cpio

  • Utilisation avec la commande `find` : `cpio` reçoit la liste des fichiers sur l'entrée standard, il est donc courant d'utiliser la commande `find` pour générer une liste de fichiers selon des conditions complexes, puis de la rediriger vers `cpio`.
  • Utilisation de l'option `-0` : Lorsque les noms de fichiers peuvent contenir des espaces ou des caractères spéciaux, il est important d'utiliser `find -print0` avec `cpio -0` pour garantir que les noms de fichiers sont correctement traités.
  • Importance du choix du mode : Les trois modes `-o`, `-i`, et `-p` ont des objectifs différents, il faut donc choisir le mode approprié à la tâche.
  • Chemins absolus et relatifs : `cpio` utilise les chemins tels qu'ils sont stockés dans l'archive. Par conséquent, si vous utilisez un chemin relatif comme `find .` lors de la création de l'archive, l'extraction se fera relativement au répertoire courant. Si vous archivez avec un chemin absolu, l'extraction suivra également le chemin absolu.

Commandes de la même catégorie