La fonction cp

La fonction cp, comme copy, permet de copier un fichier ou un répertoire. Cette fonction est assez simple a utiliser : cp [OPTIONS] SOURCE DESTINATION où SOURCE est le fichier ou répertoire à copier et DESTINATION l'endroit où SOURCE est copiée.
Exemple :
user@ordi:~$ ls Books Code driver_wifi_80211g.zip goldie.avi Images john-1.7.2.tar.gz Musique Vidéos Bureau Documents Examples gtk-cours.pdf john-1.7.2 Modèles Public user@ordi:~$ cp john-1.7.2.tar.gz Documents/ user@ordi:~$ ls Documents/ el201 en201a in201 john-1.7.2.tar.gz ma201 ma211_annales.tar.gz pr201.tar.gz sh201
Dans cet exemple, john-1.7.2.tar.gz est SOURCE et Document est DESTINATION. On ne s'est pas servi de OPTION car il n'est pas obligatoire d'en utiliser. Cependant certaines options sont assez pratiques :
- cp -r ou cp -R: permet de copier un répertoire (recursive)
- cp -i : permet de demander confirmation avant d'écraser un fichier déjà existant (interactive)
- cp -v : permet d'utiliser le mode verbose : cp devient alors très bavard
Comme pour ls, il n'est pas interdit d'utiliser plusieurs options à la fois ; ainsi cp -rvi Document/en201a ~/cours
permet de de copier le répertoire en201a situé dans ./Document vers /home/user/cours.
user@ordi:~$ ls Books Code Documents Examples gtk-cours.pdf john-1.7.2 Modèles Public Bureau cours driver_wifi_80211g.zip goldie.avi Images john-1.7.2.tar.gz Musique Vidéos user@ordi:~$ cp -rvi Documents/en201a/ ~/cours `Documents/en201a/` -> '/home/user/cours/en201a' `Documents/en201a/en201a3_v2.pdf` -> '/home/user/cours/en201a/en201a3_v2.pdf' `Documents/en201a/en201a4_v2.pdf` -> '/home/user/cours/en201a/en201a4_v2.pdf' `Documents/en201a/en201a3_v1.pdf` -> '/home/user/cours/en201a/en201a3_v1.pdf' user@ordi:~$ ls cours/ en201a
Les 3 options citées précédemment ne sont pas inutiles puisque qu'on les retrouve dans beaucoup d'autres commandes pour le même usage.