Ubuntu - Linux : Gestion des fichiers avec la ligne de commandes
Table des matières:
- Copie de fichiers avec la commande
cp
- Copiez un fichier dans un répertoire
- Copiez plusieurs fichiers
- Copie de répertoires avec la commande
cp
- Copie de fichiers et de répertoires avec la commande
rsync
- Conclusion
La copie de fichiers et de répertoires est l'une des tâches les plus courantes que vous effectuerez lorsque vous travaillerez sur la ligne de commande. Sous Linux, il existe plusieurs commandes pour copier des fichiers avec
cp
et
rsync
étant les outils les plus utilisés.
Il est courant d'utiliser la commande
cp
lors de la copie de fichiers et la commande
rsync
lors de la copie de répertoires.
Pour pouvoir copier des fichiers et des répertoires, vous devez au moins disposer d'autorisations de lecture sur le fichier source et d'écriture sur le répertoire de destination.
Copie de fichiers avec la commande
cp
Sur les systèmes d'exploitation Linux et Unix, la commande
cp
est utilisée pour copier des fichiers et des répertoires.
Le cas d'utilisation le plus simple consiste à copier un fichier dans le répertoire de travail actuel. Par exemple, pour copier un fichier nommé
file_backup.txt
dans un fichier nommé
file_backup.txt
dans le répertoire en cours, vous devez exécuter la commande suivante:
cp file.txt file_backup.txt
Si le fichier de destination existe, il sera écrasé. Pour obtenir une invite de confirmation avant d'écraser les fichiers, utilisez l'option
-i
.
cp -i file.txt file_backup.txt
Par défaut, lorsque vous utilisez la commande
cp
pour copier un fichier, le nouveau fichier appartiendra à l'utilisateur exécutant la commande. Utilisez l'option
-p
pour conserver le mode de fichier, la propriété et les horodatages:
cp -p file.txt file_backup.txt
Une autre option qui peut être utile est
-v
. Lorsque vous utilisez cette option, la commande imprime ce qui est en cours:
cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'
Copiez un fichier dans un répertoire
Pour copier un fichier dans un répertoire, spécifiez le chemin absolu ou relatif vers le répertoire. Si le répertoire de destination est omis, le fichier est copié dans le répertoire actuel.
Dans l'exemple suivant, nous copions le fichier
file.txt
dans le répertoire
/backup
:
cp file.txt /backup
Lorsque vous spécifiez uniquement le nom du répertoire comme destination, le fichier copié aura le même nom que le fichier d'origine.
cp file.txt /backup/new_file.txt
La commande ci-dessus copiera le fichier dans le répertoire spécifié en tant que
new_file.txt
.
Copiez plusieurs fichiers
Pour copier plusieurs fichiers et répertoires à la fois, spécifiez les noms des fichiers et répertoires sources suivis du répertoire de destination comme dernier argument:
cp file.txt dir file1.txt file2.txt dir1
Lors de la copie de plusieurs fichiers, la destination doit être un répertoire.
La commande cp vous permet également d'utiliser la correspondance de motifs. Par exemple, pour copier tous les fichiers
.png
du répertoire actuel vers le répertoire
/backup
, vous utiliseriez:
Copie de répertoires avec la commande
cp
Pour copier un répertoire, y compris tous ses fichiers et sous-répertoires, utilisez l'option
-R
ou
-r
. Dans l'exemple suivant, nous copions le répertoire
Pictures
vers
Pictures_backup
:
cp -R Pictures Pictures_backup
La commande ci-dessus créera le répertoire de destination et copiera récursivement tous les fichiers et sous-répertoires de la source vers le répertoire de destination.
Si le répertoire de destination existe déjà, le répertoire source lui-même et tout son contenu seront copiés dans le répertoire de destination. Pour copier uniquement les fichiers et sous-répertoires mais pas les répertoires cibles, utilisez l'option
-T
:
cp -RT Pictures Pictures_backup
Les options utilisées lors de la copie de fichiers peuvent également être utilisées lors de la copie du répertoire. La principale différence est que lors de la copie de répertoires, vous devez utiliser l'option
-R
.
Copie de fichiers et de répertoires avec la commande
rsync
rsync
est un utilitaire de ligne de commande rapide et polyvalent qui synchronise les fichiers et les répertoires entre deux emplacements. Il peut être utilisé pour copier des fichiers vers des emplacements locaux et distants.
rsync
comprend un certain nombre d'options qui contrôlent tous les aspects de son comportement. L'option la plus utile est
-a
qui copie les répertoires de manière récursive, transfère les périphériques spéciaux et bloqués, préserve les liens symboliques, les heures de modification, le groupe, la propriété et les autorisations.
Pour copier un seul fichier de l'un vers un autre emplacement, vous devez exécuter la commande suivante:
rsync -a file.txt file_backup.txt
Si le fichier de destination existe,
rsync
le remplacera.
La même commande peut être utilisée pour copier un répertoire:
rsync -a /var/www/public_html/ /var/www/public_html_backup/
rsync
menace les répertoires source qui se terminent par une barre oblique de fin
/
différemment. Si vous ajoutez une barre oblique de fin sur le répertoire source, la commande copiera uniquement le contenu du répertoire source dans le répertoire de destination. Lorsque la barre oblique de fin est omise,
rsync
copiera le répertoire source dans le répertoire de destination. L'option la plus sûre consiste à toujours inclure la barre oblique de fin
/
sur la destination et la source.
Pour en savoir plus sur
rsync
consultez les articles suivants:
Conclusion
Dans ce guide, nous vous avons montré comment copier des fichiers et des répertoires dans des systèmes Linux et Unix à l'aide des utilitaires
cp
et
rsync
.
Comment déplacer des fichiers et des répertoires sous Linux (commande mv)
Le déplacement de fichiers et de répertoires est l'une des tâches les plus élémentaires que vous devez souvent effectuer sur un système Linux. Dans ce didacticiel, nous expliquerons comment utiliser la commande mv pour déplacer des fichiers et des répertoires.
Comment renommer des fichiers et des répertoires sous Linux
Renommer des fichiers et des répertoires est l'une des tâches les plus élémentaires que vous devez souvent effectuer sur un système Linux. Dans ce didacticiel, nous allons vous montrer comment utiliser les commandes mv et rename pour renommer des fichiers et des répertoires.
Comment compresser des fichiers et des répertoires sous Linux
Zip est le format de fichier archive le plus utilisé qui prend en charge la compression de données sans perte.Dans ce didacticiel, nous allons vous montrer comment compresser (compresser) des fichiers et des répertoires sous Linux à l'aide de la commande zip.