Exercices sur cp et mv
Ces exercices sont des questions de cours : les solutions se trouvent toutes dans les pages de man des commandes en question. On suppose donc connues les commandes de less, qui servent à se déplacer dans les pages de man... Testez les commandes sur des fichiers et répertoires d'essai pour vous faire la main et comprendre ce qui se passe.
cp
1. Est-il possible de faire une copie d'un répertoire et de l'ensemble de ses sous-répertoires en une seule ligne de commande, sans d'abord faire une copie de chacun des fichiers l'un après l'autre ?

Il faut ajouter l'option -R.



2. Que se passe-t-il si l'on veut faire une copie appelée tentative/ de son répertoire essai/, et que le répertoire tentative/ existe déjà ?
On crée essai/ et /tentative pour les besoins de la question.


Le répertoire essai/ est copié dans le répertoire tentative/.
3. Que se passe-t-il si vous voulez faire une copie d'un fichier dans un répertoire où il existe déjà un fichier de ce nom ?

Il semblerait que le fichier précédent soit écrasé.





Le fichier précédent est effectivement écrasé.
4. Est-il possible de taper une ligne du genre de : cp fichier1 fichier2 fichier3 repertoire/ ? Quel est l'effet de cette ligne ?
On crée les fichiers et le dossier.


Les trois fichiers ont été copiés dans le dossier repertoire/.
mv
1. La syntaxe de mv est mv fichier1 fichier2; fichier1 est renommé en fichier2. Mais que se passe-t-il si fichier2 existe déjà ?

Si fichier2 existe déjà, il est remplacé par la copie.
2. Supposez que vous avez chez vous l'arborescence précédente, et que vous vous trouvez dans ~/Rapport/docs/.
Comment faites-vous pour y amener Rapport.tex qui se trouve dans le répertoire père ?

Comment faites-vous ensuite pour ramener ce fichier à son emplacement d'origine ?

3. Comment renommer un répertoire bla en blo ? Que se passe-t-il si le répertoire blo existe déjà ?


Le répertoire semble seulement changer de nom.


En fait, si le nom du répertoire est déjà pris, la copie le remplace.
4. Comment faire pour à la fois déplacer un fichier et changer son nom ? Que se passe-t-il si il existe déjà un fichier de ce nom dans le répertoire d'arrivée ?





L'ancien fichier est écrasé.
5. Mêmes questions avec un répertoire.
Il se passera la même chose avec un répertoire qu'avec un fichier.6. Que se passe-t-il si on lance mv avec les options -i et -f ensemble ?


Tout dépendra de la dernière option inscrite ;)