« Le système d'exploitation GNU-Linux/Commandes de base » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
→‎mv (move) : correction faute d'orthographe
Ligne 134 : Ligne 134 :
$ mv [Option] Répertoire Source
$ mv [Option] Répertoire Source


$ mv fichier_source fichier_cible # copie '''fichier_source''' dans '''fichier_cible'''
$ mv fichier_source fichier_cible # déplacer '''fichier_source''' dans '''fichier_cible'''
$ mv fichier1 fichier2 # renomme le fichier '''fichier1''' en '''fichier2'''
$ mv fichier1 fichier2 # renomme le fichier '''fichier1''' en '''fichier2'''

Version du 13 décembre 2008 à 23:03

Éléments de syntaxe

Les commandes présentées dans les sections qui suivent sont introduites juste après un message d'invite qui dépend de la configuration du shell utilisé. Celui-ci est représenté par un signe dollar $. Il ne doit donc pas être tapé.

Le caractère dièse # marque le début d'un commentaire qui se termine en fin de ligne. Il n'est pas nécessaire de le recopier pour exécuter la commande.

Exemple :

$ pwd   # affiche le répertoire courant

Pour tester cette commande, il suffit d'entrer p w d .

Les lignes qui ne sont pas marquées du signe dollar indiquent ce que la commande précédent doit/peut afficher.

pwd (print working directory)

Affiche le répertoire courant.

 $ pwd
 /home/alex

id

Affiche les informations relatives à l'utilisateur connecté.

 $ id
 uid=1000(alex) gid=1000(alex) groupes=20(dialout), 24(cdrom), 25(floppy), 29(audio), 44(video), 46(plugdev), 106(netdev), 109(powerdev), 1000(alex)
 

passwd

Permet de changer son mot de passe

 $ passwd
 Changing password for alex
 (current) UNIX password:
 Enter new UNIX password:
 Retype new UNIX password:
 passwd : le mot de passe a été mis à jour avec succès

cd (change directory)

Pour se placer dans un répertoire

 $ cd .                    # . désigne le répertoire courant
 $ cd ..                   # .. désigne le répertoire parent
 $ cd /                    # / désigne le répertoire racine
 $ cd /tmp                 # désigne le répertoire tmp appartenant à la racine
 $ cd tmp                  # désigne le répertoire tmp du répertoire courant
 $ cd ../tmp               # désigne le répertoire tmp du répertoire parent du répertoire courant
 $ cd ~                    # permet de revenir dans son répertoire de travail (home directory)
 $ cd                      # idem

Connecté en root, la commande cd m'amène au répertoire /root qui est le répertoire de travail de l'utilisateur root.

Connecté avec l'utilisateur alex, cd m'amène au répertoire de travail de l'utilisateur alex, à savoir /home/alex.

ls

Liste les fichiers d'un répertoire

 $ ls                      # liste les fichiers non cachés du répertoire courant  
 $ ls -l                   # (l : long) : liste détaillée des fichiers du répertoire courant 
 $ ls -a                   # (a : all) : liste tous les fichiers, y compris les fichiers cachés

On peut combiner plusieurs options, l'ordre n'est pas important. Les quatre commandes suivantes sont identiques :

 $ ls -a -l
 $ ls -l -a
 $ ls -la
 $ ls -al

Lister de façon détaillée (-l) tous les fichiers, même cachés (-a), les plus récents (-t) en derniers (-r), avec leur taille en kilo-octets (-k) lisible facilement avec les unités K pour Kilo, M pour Mega, G pour Giga(-h).

$ ls -lartkh

cat (concatenate)

Affiche le contenu d'un fichier ou de plusieurs fichiers concaténés sur la sortie standard (l'écran)

 $ cat /etc/crontab                      # affiche le contenu du fichier /etc/crontab
 $ cat /etc/cron.daily /etc/cron.weekly  # concatène les deux fichiers et affiche leur contenu

mkdir (make directory)

Permet de créer un répertoire

 $ mkdir rep1              # crée un répertoire rep1 dans le répertoire courant
 $ mkdir /rep1             # tente de créer un répertoire rep1 à la racine,
                           # le système refuse car je ne suis pas connecté en root

Exercice : je suis dans le répertoire /var/log, je souhaite créer un répertoire rep2 dans le répertoire /home/alex, comment faire ?

J'ai 3 possibilités:

 $ mkdir ../../home/alex/rep2    # on utilise un adressage relatif à la position où je suis : 
                                 # on remonte dans l'arborescence jusqu'à la racine puis 
                                 # on redescend jusqu'au répertoire alex)
 $ mkdir /home/alex/rep2         # on utilise un adressage absolu en partant de la racine
 $ mkdir ~/rep2                  # on utilise ~ pour désigner le répertoire de travail

l'option -p permet de créer le(s) répertoire(s) parent(s).

 $ mkdir  -p rep1/rep2           # crée un répertoire parent rep1 si il n'existe pas,
                                 # et crée dans rep1 un répertoire rep2

rmdir (remove directory)

Supprimer un répertoire vide

 $ rmdir rep1

cp (copy)

Copier un fichier

 $ cp /etc/passwd /tmp                # copie le fichier /etc/passwd dans le répertoire /tmp
 $ cp /etc/passwd /tmp/nouveaunom     # copie le fichier /etc/passwd dans le répertoire /tmp 
                                      # et le renomme en nouveaunom

Attention, si le fichier destination existe déjà, il sera remplacé et sans demander confirmation

Options courantes :

 -i : si le fichier destination existe, demande confirmation avant de remplacer le fichier


rm (remove)

Effacer un fichier

 $ rm lefichier                      # efface le fichier lefichier

Attention, le fichier est effacé et sans demander confirmation

Options courantes :

 -i : demande confirmation avant d'effacer le fichier


mv (move)

Déplacer ou renommer des fichiers

 $ mv [Option] Source Destination(répertoire)
 $ mv [Option] Répertoire Source
 $ mv fichier_source fichier_cible   # déplacer fichier_source dans fichier_cible
 
 $ mv fichier1 fichier2    # renomme le fichier fichier1 en fichier2
                           # Attention si fichier2 existe, son contenu sera écrasé et 
                           # remplacé par celui de fichier1

Par précaution, on utilise l'option -i qui permet d'être averti par le système avant l'écrasement du fichier destination si celui-ci existe.

 $ mv -i fichier1 fichier2 # demande la confirmation avant d'effacer la destination
 $ mv rep1/fic1 rep2/fic2  # déplace le fichier fic1 situé dans le répertoire rep1
                           # sous le nouveau nom fic2 situé dans le répertoire rep2
 $ mv rep1 rep2            # déplace le répertoire rep1 dans le répertoire rep2
                           # si rep2 n'existe pas, renomme rep1 en rep2

ln (link)

La commande ln permet de créer des liens, c'est à dire des raccourcis vers des fichiers ou des répertoires.

 ln -s destination nom_du_lien

Exemple

 $ ln -s prog1.0 monprogramme

Cette commande crée le lien suivant :

 lrwxrwxrwx 1 alex alex   7 2007-10-26 14:25 monprogramme -> prog1.0