Chapitre 4

Chapitre 4

Les commandes de base I
(pwd, cd, ls, rm)

Le shell | pwd | cd | ls | rm


Le shell:
Pour commancer, le shell que j'utiliserai sera bash. Un shell c'est un programme qui relie l'utilisateur a Linux. Tout les commandes que vous tapez sous Linux est interpretee par le shell et ensuite transmise au noyau (Kernel) de Linux. Une invite est ce qui vous apparait lorsque vous partez un shell. Mon invite a moi est:

Jeep:[Jeep]:/#

Ce qui signifie:

Nom de la machine : [Nom de l'utilisateur] : Repertoire courrant : # pour root et $ pour un utilisateur normal.

Si le repertoire courant est ~ c'est que vous etes dans votre repertoire maison.

Faites attention, les MAJUSCULES sont differante des minuscule sous Linux, ce qui veut dire que la commande pwd et Pwd ou PWD, ne sont pas pareil.


La commande pwd:
Cette commande signifie Print Working Directory. Elle permet d'afficher le repertoire courant.

Ex:
Jeep:[Jeep]:/# pwd
/
Jeep:[Jeep]:/# 
Pas tres utile si on la vois comme ca, mais elle peut vraiment servir lors de la programmation de shell script (Ce sont des commandes inscrit dans un fichier et elle s'execute tous lorsque le fichier est executer).


La commande cd:
Si vous etes familier avec MS-DOS vous devez alors bien connaitre cette commande. Elle sert a changer de repertoire. Elle fonctionne de la meme facon que celle de DOS, sauf que la seul differance c'est qu'elle doit avoir un ESPACE etre le cd et le .. lorsque vous changer de repertoire.

Lorsque l'on utilise la commande cd sans argument, c'est a dire que l'ont tape seulement cd et ENTRER, on revien automatiquement a notre repertoire maison qui est representer par ~. Ex:
Jeep:[Jeep]:/# cd etc
Jeep:[Jeep]:/etc# cd ..
Jeep:[Jeep]:/# cd usr/bin
Jeep:[Jeep]:/usr/bin# cd /
Jeep:[Jeep]:/#

La commande ls:
Cette commande equivaut a la commande dir de MS-DOS. Elle donne la list des fichiers et des repertoires du repertoire courant. Il y a de nombreuse options qui s'applique a cette commande. Pour en avoir la list detailer tapez man ls ou ls --help. Vous pouvez aussi utiliser man et --help a tout les autres commandes. Voici une list de quelques arguments de ls qui sont utiles.

N.B.: Pour dessendre d'une page dans man il suffit d'appuyer sur ESPACE, pour remonter d'une page on appuie sur la touche B et pour en sortir sur Q.

-l
Sert a avoir une liste detailer des fichiers et des repertoires.

-a
Sert a voir les fichier cacher (En Linux les fichiers cacher commance par un .)

Vous pouvez aussi faire des combinaisons, exemple, ls -la

Ex:

Jeep:[Jeep]:/# ls
as@          cdrom/       hack/        lost+found/  sbin/        vmlinuz
bin/         dev/         home/        mnt/         tmp/         vmlinuz.bak
boot/        etc/         jeep@        proc/        usr/         vmlinuz.new
c:/          gimp.log     lib/         root/        var/
Jeep:[Jeep]:/# 
Jeep:[Jeep]:/# ls -l
total 1027
lrwxrwxrwx   1 Jeep     root           26 Dec 22 00:09 as -> /usr/local/share/a$
drwxr-xr-x   2 Jeep     bin          2048 Mar 25 20:53 bin/
drwxr-xr-x   2 Jeep     root         1024 Feb  8 22:45 boot/
drwxr-xr-x  21 Jeep     root        16384 Dec 31  1969 c:/
drwxr-xr-x   2 Jeep     root         1024 Oct  6  1997 cdrom/
drwxr-xr-x   2 Jeep     root        26624 Mar 27 00:30 dev/
drwxr-xr-x   8 Jeep     root         2048 Mar 27 00:30 etc/
-rw-r--r--   1 Jeep     root           61 Feb 14  1998 gimp.log
drwxr-xr-x   9 Jeep     root         1024 Jan 14 16:54 hack/
drwxr-xr-x   9 Jeep     root         1024 Mar 27 00:01 home/
lrwxrwxrwx   1 Jeep     root           10 Dec 21 23:36 jeep -> /home/jeep/
drwxr-xr-x   3 Jeep     root         4096 Feb 15  1998 lib/
drwxr-xr-x   2 Jeep     root        12288 Dec 21 15:40 lost+found/
-rw-r--r--   1 Jeep     root            0 Mar 27 12:50 lsl
drwxr-xr-x   2 Jeep     root         1024 Oct  6  1997 mnt/
dr-xr-xr-x   5 Jeep     root            0 Mar 26 19:30 proc/
drwxr-xr-x  15 Jeep     root         1024 Mar 27 12:16 root/
drwxr-xr-x   2 Jeep     bin          2048 Mar 18 23:19 sbin/
drwxrwxrwt   7 Jeep     root        11264 Mar 27 11:55 tmp/ 
drwxr-xr-x  18 Jeep     root         1024 Oct  6 23:31 usr/ 
drwxr-xr-x  15 Jeep     root         1024 Mar 28  1998 var/
-rw-r--r--   1 Jeep     root            0 Mar 25 20:40 vmlinuz
-rw-r--r--   1 Jeep     root       504357 Dec 21 15:45 vmlinuz.bak
-rw-r--r--   1 Jeep     root       436683 Jan 14 17:29 vmlinuz.new
Jeep:[Jeep]:/# cd
Jeep:[Jeep]:~# ls
Desktop/     GNUstep/     icons-kde@   kvirc/       minicom.log  wine*
Jeep:[Jeep]:~# ls -a
./                 .less              .nsmail/           .xinitrc
../                .lesskey           .nsnews/           Desktop/
.asWedit-prefs     .licq/             .prognet/          GNUstep/
.asmailrc          .mailcap           .solrc             icons-kde@
.bash_history      .mime.types        .steprc            kvirc/
.ezppprc           .ncftp/            .wine/             minicom.log
.gimp/             .nedit             .winerc            wine*
.kde/              .neditdb           .workmandb
.kderc             .netscape/         .workmanrc
.kmid_collections  .netwatch          .x11amp/
Jeep:[Jeep]:~# 
Le caractere * est aussi accepeter tout comme dans MS-DOS. * signifie TOUT.

Ex:
Jeep:[Jeep]:/jeep/pouet# ls
allo.txt    jeep.doc    martin.doc  patate.txt
Jeep:[Jeep]:/jeep/pouet# ls *.txt
allo.txt    patate.txt
Jeep:[Jeep]:/jeep/pouet# 
ls liste tout les fichiers finissant par .txt
On peut aussi utiliser ? qui remplace un seul caractere.

Ex:
Jeep:[Jeep]:/jeep/pouet# ls ?atate.txt
patate.txt
Jeep:[Jeep]:/jeep/pouet#
* et ? peuvent aussi etre utiliser dans tout les autres commandes shell.


La commande rm:
Faites attention a cette commande, c'est la commande equivalante a DEL sous DOS, c'est-a-dire, la commande pour supprimer des fichiers ou des repertoires. Comme tout les autres commandes elle contient des arguments. En voici quelque un.

-r
Elle permet de supprimer un repertoire.

-i
Elle demande une confirmation avant de supprimer un fichier ou un repertoire.

N'utilisez JAMAIS la commande rm -rf /
Elle detruirais votre systeme entier.


Ex:
Jeep:[Jeep]:/jeep/pouet# ls
allo.txt    patate.txt
Jeep:[Jeep]:/jeep/pouet# rm allo.txt
Jeep:[Jeep]:/jeep/pouet# ls
patate.txt
Jeep:[Jeep]:/jeep/pouet#
Ci-dessous j'utilise l'argument -r et le repertoire pouet est effacer.

Jeep:[Jeep]:/jeep/pouet# cd ..
Jeep:[Jeep]:/jeep# rm -r pouet
Jeep:[Jeep]:/jeep# cd pouet
bash: pouet: No such file or directory
Jeep:[Jeep]:/jeep#

Definitions:

Arguments: Un argument c'est ce qui suit une commande.