Copie, d�placement et changement des noms de fichiers et de r�pertoires

A ce stade, vous disposez d�j� de quelques connaissances sur la structure du syst�me de fichiers�; vous avez �galement appris � cr�er des fichiers et des r�pertoires.

Mais une fois les fichiers et r�pertoires cr��s, ils ne sont pas immuables. Que se passe-t-il si vous voulez renommer et/ou d�placer des fichiers et des r�pertoires�?

Commen�ons par la commande de copie.

Copie de fichiers

Comme pour bon nombre de fonctions de Linux, vous avez le choix entre toute une s�rie d'options lorsque vous voulez manipuler des fichiers et des r�pertoires. Vous pouvez �galement utiliser des caract�res g�n�riques lorsque vous copiez, d�placez ou supprimez des fichiers et des r�pertoires.

Fondamentalement, la commande de copie se r�sume � entrer ceci�:

cp source destination
	    

Ainsi, pour copier le fichier tennis.txt dans le sous-r�pertoire tigger de votre r�pertoire de connexion, entrez simplement�:

cp tennis.txt tigger
	    

Remarquez que vous avez �galement utilis� des noms de chemin relatifs pour copier le fichier. La commande cp permet d'utiliser des noms de chemin relatifs ou absolus. Le r�pertoire de connexion est le r�pertoire parent du r�pertoire tigger�; cela signifie que tigger est un sous-r�pertoire du r�pertoire de connexion.

Consultez la page de manuel cp (man cp) pour obtenir une liste compl�te des options offertes par la commande cp. Voici cependant quelques-unes des options de la commande cp�:

Si vous utilisez la commande cp toute seule, vous ne verrez pas grand-chose de l'ex�cution de la commande. L'usage d'une option telle que -i peut rendre le processus un peu plus utile car, si vous voulez copier un fichier vers un emplacement contenant d�j� un fichier du m�me nom, le syst�me commencera par vous demander si vous voulez r�ellement �craser (remplacer) le fichier existant.

A pr�sent que le fichier tennis.txt se trouve dans le r�pertoire tigger, utilisons la commande cp -i pour copier de nouveau le fichier au m�me endroit.

[newuser@localhost newuser]$ cp -i tennis.txt tigger
cp: overwrite 'tigger/tennis.txt'?
	    

Pour �craser le fichier qui se trouve d�j� dans le r�pertoire, cliquez sur Y, puis appuyez sur Entr�e. Vous ne souhaitez pas �craser le fichier�? C'est le moment d'appuyer sur N, puis sur la touche Entr�e.

D�placement de fichiers

Pour d�placer des fichiers, utilisez la commande mv (man mv), similaire � la commande cp�; la seule diff�rence est qu'avec mv, le fichier est physiquement d�plac� d'un endroit � l'autre, au lieu d'�tre simplement copi� comme c'est le cas avec cp.

Les options communes avec mv comprennent�:

Si vous voulez d�placer un fichier d'un r�pertoire personnel vers un autre r�pertoire, entrez�:

mv tennis.txt tigger
	    

ou mv tennis.txt /home/newuser /home/newuser/tigger en utilisant des noms de chemin absolus.

Modification du nom d'un fichier

En r�alit�, nous avons d�j� couvert la moiti� de la proc�dure de changement de nom car, lorsque vous copiez ou d�placez des fichiers, vous pouvez �galement les renommer.

Pour copier le fichier tennis.txt du r�pertoire de connexion vers le sous-r�pertoire tigger, entrez simplement�:

cp tennis.txt tigger
	    

Pour copier et renommer ce fichier de tennis.txt en basket.txt, entrez�:

cp tennis.txt tigger/piglet.txt
	    

Pour d�placer et renommer le fichier, substituez simplement la commande mv � la commande cp dans l'exemple ci-dessus.

Si vous acc�dez au r�pertoire (cd) tigger et utilisez la commande ls, vous voyez le fichier basket.txt.

Si vous voulez simplement renommer le fichier en conservant son emplacement, ex�cutez uniquement la commande mv dans le r�pertoire en cours�:

mv  tennis.txt basket.txt
	    

Suppression de fichiers et de r�pertoires

Nous avons parl� de la cr�ation de fichiers � l'aide de la commande touch et de la redirection dans le Chapitre 15. Nous avons �galement cr�� le r�pertoire tigger � l'aide de la commande mkdir.

Mais nous n'avons pas encore vu comment supprimer des fichiers et des r�pertoires.

La suppression de fichiers et de r�pertoires � l'aide de la commande rm (man rm) est un processus simple.

Prenons le nouveau fichier basket.txt et supprimons-le du r�pertoire tigger � l'aide de la commande rm�:

rm basket.txt
	    

Que se passe-t-il si nous ne voulions pas r�ellement nous en d�barrasser�? Trop tard�! Une fois de plus, c'est l� o� l'option -i (interactive) devient utile car elle offre la possibilit� de r�fl�chir � deux fois avant de supprimer un fichier.

[newuser@localhost newuser]$ rm -i basket.txt
rm: remove 'basket.txt'?
	    

Vous pouvez �galement supprimer des fichiers � l'aide du caract�re g�n�rique *. Soyez prudent n�anmoins car vous risquez de supprimer certains fichiers involontairement.

Pour supprimer un fichier � l'aide d'un caract�re g�n�rique, entrez�:

rm bask*
	    

Vous pouvez �galement supprimer plusieurs fichiers dans une seule commande, par exemple, en entrant�:

rm basket.txt tennis.txt
	    

Parmi les options pour la suppression de fichiers et de r�pertoires figurent�:

Pour supprimer des r�pertoires � l'aide de la commande rm, sp�cifiez l'option -r.

Par exemple, si vous voulez supprimer de fa�on r�cursive le r�pertoire tigger, entrez�:

rm -r tigger
	    

Si vous voulez combiner des options, par exemple forcer une suppression r�cursive, entrez�:

rm -rf tigger
	    

AttentionSoyez prudent�!
 

La commande rm est suffisamment puissante pour an�antir tout votre syst�me�! Si vous �tes connect� en tant que root et entrez la commande rm -rf / vous �tes �limin� (comme un serpent se mordant la queue, la commande supprime de fa�on r�cursive tout ce qu'il y a sur le syst�me).

Une alternative plus s�re � l'utilisation de rm pour supprimer des r�pertoires est la commande rmdir. Cette commande ne permet pas d'effectuer des suppressions de mani�re r�cursive, de sorte qu'il est impossible de supprimer un r�pertoire contenant des fichiers.

Consultez la page de manuel rmdir en entrant man rmdir pour en savoir plus sur la commande.