GNU/Linux

Publié le 1 février, 2017 | par Loulou De Gueyo

2

Introduction aux commandes Linux

Qu’est-ce que Linux ?

Linux est un système d’exploitation Libre et populaire. Il est multitâche et multi-utilisateur. C’est un système d’exploitation au même titre que Microsoft Windows et Mac OS X. Il est très puissant et est utilisé pratiquement dans tous les domaines. Il est utilisé comme système d’exploitation desktop, serveurs (serveurs web, serveur dédiés, supercalculateurs etc.), dans des systèmes embarqués et comme noyau de système d’exploitation  mobile (Androïd).  En fait l’appellation exacte est le système GNU/Linux étant donné que Linux est juste le noyau auquel vient se greffer les utilitaires GNU. Dans la suite quand je mentionnerai le terme Linux, je serai en train de faire référence à GNU/Linux.

GNU_and_Tux.svg

Linux comme la plupart des systèmes d’exploitations a une interface graphique, des fenêtre, des icônes qui peuvent être manipulées avec la souris. Cependant sa puissance réside dans sa Console appelée aussi Terminal qui interprète des commandes entrées au clavier. La Console de Linux est une véritable mine d’or et une fois que vous vous aurez aventuré dans ce monde, je vous garantie que vous y demeurerez pour toujours.

Qu’est ce qu’une distribution Linux ?

Linux est beaucoup configurable et comprend des milliers de programmes. De ce fait plusieurs variantes de Linux ont vu le jour selon des goûts diversifiés et surtout pour  des usages bien spécifiques. En réalité une distribution Linux est un noyau Linux+les utilitaires GNU auxquels on ajoute certains logiciels.  Debian, Ubuntu , Red Hat Enterprise Linux, Slackware, et Mint etc. sont des exemples de distributions Linux.

distroLinux

 

Dans la suite de cet article je vais vous initier aux commandes Linux de la Console Linux.  Je suppose également que vous avez déjà une distribution Linux installée sur votre machine ou sur une machine virtuelle.

Qu’est ce qu ‘un shell  ?

Lorsque vous vous connectez à un serveur Linux avec votre login et votre mot de passe, ou lorsque vous lancer votre terminal depuis votre interface graphique, une invite de commandes se présente à vous. Il attend que vous entriez une commande au clavier et la valider avec la touche « Entrer » de votre clavier.

loulou@server:~$ |

Ici loulou représente le login de l’utilisateur. En fait c’est l’utilisateur dont le login est loulou qui est connecté . server n’est rien d’autre que le nom de la machine sur laquelle il est connecté  et l’@ veut dire « at » en anglais qui signifie « chez » en français. En un mot loulou est chez server actuellement. Le ~ veut tout simplement dire que l’utilisateur loulou est  dans son répertoire personnel actuellement et le signe $ nous indique que loulou est connecté comme un utilisateur normal, un utilisateur ordinaire qui n’est pas l’administrateur du système.

En fait ici nous avons un shell qui est le bash (Bourne Again Shell) . Un shell est un interpréteur de commandes. C’est en fait lui qui va traduire les commandes que nous allons entrer dans la console pour les communiquer au noyau Linux. Le noyau reçoit les ordres, il les exécute et le shell nous affiche les résultats s’il y a des résultats à afficher. Il existe plusieurs shells.

L’invite de commande précédente aurait pu être différente selon le shell de l’utilisateur.

Pour le shell sh on aurait eu ceci:

$

Pour le shell zch on aurait eu ceci:

loulou@server ~ % 

Qu’est ce qu’une commande ?

Une commande Linux est le nom d’un programme avec des options et des arguments tapés dans un terminal. Exp:

wc -l fichier

Ici wc (Word Count) est le nom d’un programme qui existe  sur le système que le shell va localiser puis executer. Il permet de compter les mots d’un fichier texte. Les options commencent généralement par un – (tiret du 6 ou le signe – de la soustraction). Ils  permettent de changer le comportement par défaut d’un programme. Dans notre cas ici l’option -l dit a wc de compter les lignes et non les mots du texte. Enfin fichier est un argument du programme wc. C’est en fait le fichier dont wc comptera le nombre de  lignes.

Les commandes peuvent avoir plusieurs options et plusieurs arguments comme ci-dessous:

wc -l -w fichier
commande avec deux options -l et -w

Il est possible de combiner les options,

wc -lw fichier
Combinaison d'options

ou même avoir plusieurs arguments. La commande ci-dessous comptera le nombre de lignes du fichier1 et le nombre de ligne du fichier2

wc -l fichier1 fichier2
Commande avec deux arguments fichier1 et fichier2

Les options ne sont pas standardisées. On aurait pu utiliser  une option longue –lines en lieu et place de l’option courte -l.

wc --lines fichier

Mais la plupart du temps, les options longues sont utilisées dans la programmation bash pour une lisibilité et une bonne compréhension du programme.

Les options qui s’écrivent de la même manière n’ont pas forcement le même sens. Elles peuvent varier en fonction du programme qui les utilise.

wc -l fichier
ls -l

Dans la première commande, -l correspond à –lines, c’est à dire les lignes du fichier fichier alors que dans la seconde commande -l veut dire format long. En fait la commande ls permet de lister le contenu d’un répertoire. L’option -l de la commande ls va nous lister le contenu d’un répertoire dans un  format long.

Pour finir, voici quelques exemples de commandes que pouvez vous essayer dans votre terminal.

Afficher le calendrier de juin 2018

loulou@server:~$ cal juin 2018
Juin 2018        
di lu ma me je ve sa  
                1  2  
 3  4  5  6  7  8  9  
10 11 12 13 14 15 16  
17 18 19 20 21 22 23  
24 25 26 27 28 29 30

Lister le contenu du dossier /bin

loulou@server:~$ ls /bin

bash           getfacl        ntfs-3g           sync
bunzip2        grep           ntfs-3g.probe     systemctl
busybox        gunzip         ntfs-3g.secaudit  systemd
....

Compter le nombre d’éléments visibles de son répertoire personnel

loulou@server:~$ ls $HOME | wc -l
106

Voir l’espace disque utilisé par la partition / de son disque dur

loulou@server:~$ df -h /
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
/dev/sda1          291G    202G   75G  73% 

Voir les processus en cours d’exécution sur son système avec un rafraîchissement de l’écran chaque une seconde. Tapez la touche « q » pour quitter.

loulou@server:~$ top -d1

top - 17:27:32 up  8:59,  1 user,  load average: 0,28, 0,31, 0,27
Tâches: 275 total,   2 en cours, 272 en veille,   0 arrêté,   1 zombie
%Cpu(s):  2,5 ut,  1,0 sy,  0,0 ni, 96,0 id,  0,5 wa,  0,0 hi,  0,0 si,  0,0 st
KiB Mem :  3953884 total,   186352 libr,  3086424 util,   681108 tamp/cache
KiB Éch:  3047764 total,  2159100 libr,   888664 util.   290888 dispo Mem 

  PID UTIL.     PR  NI    VIRT    RES    SHR S  %CPU %MEM    TEMPS+ COM.        
 1172 git       20   0  709372 460780   4144 S   4,0 11,7  21:07.21 bundle      
 3020 loulou    20   0 1712728 428660  92892 S   4,0 10,8  44:55.86 firefox     
 3098 loulou    20   0 1745816 665968  94652 R   4,0 16,8  65:51.65 Web Content 
 1161 gitlab-+  20   0   41644   9244   2336 S   3,0  0,2  10:23.40 redis-serv+ 
10377 loulou    20   0   42076   3824   3160 R   2,0  0,1   0:00.17 top         
  497 root     -51   0       0      0      0 S   1,0  0,0   1:25.40 irq/38-iwl+ 
 2354 loulou    20   0 1584268  80244  35236 S   1,0  2,0   7:35.98 compiz      
    1 root      20   0  119620   3484   2232 S   0,0  0,1   0:01.60 systemd     
    2 root      20   0       0      0      0 S   0,0  0,0   0:00.00 kthreadd    
    3 root      20   0       0      0      0 S   0,0  0,0   0:00.10 ksoftirqd/0 

Effacer l’écran

loulou@server:~$ clear

Il est aussi possible d’utiliser un raccourcis clavier pour effacer l’écran: CTRL+L

 




2 Commentaires de Introduction aux commandes Linux

  1. Pingback: » Linux, quelques opérations basiques sur les fichiers

Laisser un commentaire

Vers le haut ↑