Manipulation de fichiers

Les noms de fichiers

  • Les noms de fichiers sont constitués de caractères alphabétique, numérique + ‘-’, ‘.’ et ‘_’
  • Les autres caractères spéciaux ou non, ou accentués sont à proscrire !!!
  • Les noms de fichiers sont sensibles à la casse.

On peut utilser des caractères spéciaux qui en remplacent d’autres : les caractères joker.
Les caractères ‘*’ et ‘?’ ont, comme sous DOS, un sens spécial :

‘*’ remplace n’importe quel mt (ne commencant pas par ‘.’
‘?’ remplace n’importe quel caractère (sauf ‘.’)

$> # liste tous les ficheirs commencant par a
$> ls a*
$> # liste les fichiers commencabnt par n’importe quoi (sauf ‘.’ !!!!!!)
$> ls *
$> # liste les fichiers commencant par ‘ .’
$> ls .*

Nous allons voir les principales commandes ci après…

copie : commande cp

cp sert à copier un/des fichiers ou répertoires vers un / des fichiers ou répertoires, mais toutes les combinaisons ne sont pas possibles !!
on peut seulement faire :

  • copie d’un fichier dans un autre (ou dans un répertoire)
  • copie de fichier(s) dans un autre répertoire
  • copie (récursive) d’un répertoire dans un autre

$> # copie d’1 fichier vers 1 fichier
$> cp essai1.c ok.c
$> # cp d’un fichier vers un répertoire
$ cp ok.c ../stage3

$> # cp de n fichiers vers un répertoire
$ cp *.c ../stage4
$ cp proj1*.ex? /usr/proj1

$> # copie d’un répertoire vers un répertoire
$> cp dir1 dir2
ERREUR !!!!
cp: omitting directory `dir1′

$> # copie récursive de répertoire et fichiers
$> # vers un repertoire avec meme structure arborescente
$> cp -r /usr/proj1 /user/profs/phil

$> cp *.msg *.toto
$> ERREUR !!!!
cp: copying multiple files, but last argument `*.toto’ is not a directory

Quelques Options :
-i : demande confirmation pour chaque fichier
-f : détruit même si le fichier est en “lecture seulement“
-R : copie récursive
-p : conserver les détails du fichier (owner, group, permissions,…)

La Commande rm

Détruit des fichiers.
Deux utilisations possibles :

  • destruction de fichier(s)
  • destruction ( UNIQUEMENT récursive ) de répertoire(s)

Options :
-i : demande confirmation pour chaque fichier
-f : détruit même si le fichier est en “lecture seulement”
- r ou -R : détruit récurivement fichiers et répertoires

$ rm monFich et_un_autreFich
$ rm -i *.c
$ rm -f *.tmp ../stage2/* .??*

$ rm -r /usr/proj1

La Commande mv

Deux utilisations possibles :

  • d’un fichier
  • déplacement d’un ou plusieurs fichiers dans un autre répertoires

Quelques options :

-b, –backup
Effectue une copie de secours des fichiers qui doivent être effacés.
-f, –force
Ecrase les  fichiers de destination existants sans demander confirmation à l’utilisateur.
-i, –interactive
Demander la confirmation pour écraser  tout  fichier  existant.  Si  la réponse  ne  commence  pas  par  `y’  ou  `Y’, le déplacement n’est pas effectué.
-u, –update
Ne pas déplacer un fichier régulier, qui écraserait un fichier destination existant ayant une date de modification plus récente.
-v, –verbose
Afficher le nom des fichiers avant de les déplacer.

exemples d’utilisation

$> # renomme 1 fichier vers 1 fichier
$> mv essai.c prog.c
$ mv -i toto.c pluserieux.c
$> # deplace n fichiers vers 1 répertoire
$ mv -f *.c c
$> # deplace 1 arbre vers 1 répertoire
$> mv -r /user/phil/proj1 /usr
$> # deplace un repertoire (et ses fils) vers un repertoire
$> mv rep1 rep2

La Commande file

Permet de connaitre le type des fichiers considérés :

$ file /user/machin/*
/user/machin/bin: directory
/user/machin/myscript: commands text
/user/machin/fich.c: c program text
/user/machin/fich: executable
/user/machin/makefile: ascii text

1 Pas toujours fiable en ce qui concerne les fichiers “texte” !

La Commande diff

Permet de lister les différences entre deux fichiers “texte” :

$> diff poeme nouveauPoeme
1c1
< Dictes moy ou, n’en quel pays,

> Dictes moi ou, n’en quel pays,
7c7
< Qui beaulté ot trop plus qu’humaine.

> Qui beaulté eut trop plus qu’humaine
$>

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Twitter picture

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Connexion à %s

Suivre

Get every new post delivered to your Inbox.