Voir les cours et résoudre les problèmes en :
Le C est un langage de programmation impératif conçu pour la programmation système. Inventé au début des années 1970 avec UNIX, C est devenu un des langages les plus utilisés. De nombreux langages plus modernes se sont inspirés de sa syntaxe. Il privilégie la performance sur la simplicité de la syntaxe. [En savoir plus]
Le C++ est un langage de programmation impératif. Inventé au début des années 1980, il apporte de nouveaux concepts au langage C (les objets, la généricité), le modernise et lui ajoute de nombreuses bibliothèques. C++ est devenu l'un des langages les plus utilisés. Sa performance et sa richesse en font le langage de prédilection pour les concours. [En savoir plus]
Pascal est un langage de programmation impératif inventé dans les années 1970 dans un but d'enseignement. Quoiqu'encore utilisé à cette fin, l'absence de bibliothèque standard en limite son utilisation malgré une grande efficacité. Sa syntaxe a été reprise par d'autres langages plus modernes avec plus ou moins de succès. [En savoir plus]


Remarque : Les cours pour ce langage ne sont disponibles que jusqu'au chapitre 4, « Lecture de l'entrée ». Les corrections sont toutefois toujours fournies.
OCaml est un langage de programmation fonctionnel inventé au milieu des années 1990. Il permet aussi une programmation impérative ou objet. Il permet d'écrire des programmes courts et faciles à vérifier et est ainsi utilisé pour certains systèmes embarqués très sensibles comme ceux des avions. Il est utilisé dans l'enseignement en classes préparatoires aux grandes écoles. [En savoir plus]


Remarque : Les cours pour ce langage ne sont disponibles que jusqu'au chapitre 4, « Lecture de l'entrée ». Les corrections sont toutefois toujours fournies.
Java est un langage de programmation impératif et orienté objet. Inventé au début des années 1990, il reprend en grande partie la syntaxe du langage C++ tout en la simplifiant, au prix d'une performance un peu moins bonne. S'exécutant dans une machine virtuelle, il assure une grande portabilité et ses très nombreuses bibliothèques en font un langage très utilisé. On lui reproche toutefois la « verbosité » de son code. [En savoir plus]


Remarque : Pour un débutant souhaitant apprendre Java, nous conseillons fortement de commencer par JavaScool, plus facile à apprendre, bien que fortement similaire.
Java's Cool (alias JavaScool) est conçu spécifiquement pour l'apprentissage des bases de la programmation. Il reprend en grande partie la syntaxe de Java sur laquelle il s'appuie, mais la simplifie pour un apprentissage plus aisé. La plateforme JavaScool est accompagnée d'un ensemble d'activités diverses de découverte de la programmation. [En savoir plus]
Python est un langage de programmation impératif inventé à la fin des années 1980. Il permet une programmation orientée objet et admet une syntaxe concise et claire qui en font un langage très bien adapté aux débutants. Étant un langage interprété, il n'est cependant pas aussi performant que d'autres langages. [En savoir plus]

Ouvrez un navigateur dans Linux et ouvrez-y ce cours, cela sera bien plus pratique pour vous. Pour passer du navigateur au terminal, pensez au raccourci Alt+Tab (touche "Alt" et touche "Tab", celle utulisée pour les tabulations).

Introduction

Avant de pouvoir exécuter votre premier programme sous Linux, il vous faut apprendre quelques commandes de base pour se déplacer dans les différents dossiers, éditer un fichier, créer un dossier, supprimer un fichier...

Ouverture du terminal

Ouvrez un terminal afin d'arriver à un écran tel que celui-ci :

Comme nous ne regarderons désormais que le terminal, nous utiliserons une image simplifiée :

Première commande

Voici une première commande avec son résultat :

Ici on a simplement tapé ls (puis appuyé sur la touche "Entrée") et une liste de dossiers est apparue. La commande "ls" vient de "LiSt" en anglais et permet en effet d'afficher la liste des fichiers/dossiers du répertoire actuel. Les dossiers sont affichés en bleu et les fichiers en blanc.

On peut également afficher les fichiers d'un sous-dossier :

Ici les deux fichiers sont affichés en vert car ce sont des programmes.

L'arborescence des fichiers

Si vous utilisez windows, vous avez l'habitude de voir des chemins de fichiers du type

C:\Users\Eleve\Documents\

et bien sous Linux, ils sont de cette forme

/home/eleve/Documents

En quelque sorte, le premier "/" correspond au "C:\" de windows, c'est la racine du disque dur. Les autres "/" correspondent aux "\" de windows. Pour savoir dans quel répertoire on est, on utilise la commande pwd (pour "Print Working Directory" ce qui signifie "Afficher Répertoire Actuel") :

Il s'agit du répertoire principal de l'utilisateur "eleve", c'est-à-dire vous. On l'appelle également le "Home" (soit "maison" en anglais).

On peut bien sûr se déplacer dans un autre dossier, avec la commande cd (pour "Change Directory" ce qui signifie "Changer Dossier") :

Remarquez que ce qui est avant le "$" a changé et est devenu "~/Documents" afin de nous indiquer dans quel dossier on est : le "~" correspond au "Home" et donc on est dans le sous-dossier "Documents" présent dans le "Home".

Pour remonter d'un niveau, on fait :

On va essayer à nouveau de se déplacer dans "Documents", mais cette fois-ci, ne tapez que cd Doc puis appuyez sur la touche de tabulation. La commande se complète toute seule, pratique non ? N'hésitez pas à utiliser la touche de tabulation pour compléter automatiquement de longs noms de fichiers, vous gagnerez beaucoup de temps.

Si on est dans un sous-sous-sous-dossier (par exemple /var/cache/apt/archives/partial/) et qu'on veut revenir dire dans son répertoire principal (le "Home"), il suffit de taper cd tout seul :

Note : pour copier ou coller du texte dans le terminal, vous pouvez utiliser le "Clic Droit" pour afficher le menu contextuel, mais sinon les raccourcis "Ctrl + Maj + C" (pour copier) et "Ctrl + Maj + V" (pour coller) fonctionnent. N'hésitez pas à utiliser les raccourcis claviers que nous vous donnons, ils permettent de gagner un temps précieux !

Commande et arguments

Lorsque nous exécutons la ligne de commande

cd Documents

on dit qu'on a appelé la commande cd avec l'argument Documents. Une commande peut prendre aucun, un ou plusieurs arguments. Par exemple :

Les deux premières commandes n'avaient aucun argument et les suivantes en avaient 1, 2 et 3. Au passage, vous découvrez la commande seq qui permer d'afficher les nombres entre deux bornes.

Il existe un très grand nombre de commandes et même un langage de programmation complet utilisable dans le terminal. Notre objectif n'est pas de vous apprendre tout cela, uniquement le minimum nécessaire.

Créer / supprimer un dossier

Déplacez-vous dans votre "Home" puis dans le sous-dossier "tasks" et enfin dans le sous-dossier "manips". Affichez la liste des fichiers de ce dossier, vous devriez avoir ceci :

Nous allons créer le dossier "testDir" à l'aide de la commande mkdir (pour "MaKe DIRectory" ce qui signifie "Créer Répertoire") :

Pour supprimer ce dossier nous utiliserons la commande rmdir (pour "ReMove DIRectory" ce qui signifie "Supprimer Répertoire") :

Attention, cette commande ne marche que si le dossier est vide. Par exemple, si on essaie avec "dir1" :

Comme il contenait encore deux fichiers on a eu une erreur en essayant de le supprimer avec rmdir.

Supprimer un fichier

La commande pour supprimer un fichier est rm :

Une fois qu'on a supprimé les deux fichiers, il n'y a plus rien dans le dossier (donc la commande ls dir1 n'affiche rien) et on peut alors utiliser la commande rmdir.

Supprimer tout un dossier

Il est aussi possible de supprimer tout un dossier, avec tous ses sous-dossiers et fichiers.

Le "-rf" correspond à des options qu'on donne à la commande "rm" : le "-" indique qu'on va donner des options, le "r" correspond à "récursif" et le "f" demande à ce qu'on ne nous demande pas de confirmation.

Attention cette commande est très puissante ! Comme il n'y a pas de confirmation, on a vite fait de supprimer plus de choses que prévu, utilisez donc cette commande avec précaution !

Afficher le contenu d'un fichier

Essayons d'afficher le contenu du fichier "alphabet.txt" à l'aide de la commande cat :

D'autres exemples :

Editer/créer un fichier

Nous utiliserons ici l'éditeur "gedit" (qui est déjà très bien !) mais nous vous présenterons dans un prochain cours quelques-uns des éditeurs disponibles sous Linux.

Nous allons ouvrir le fichier "fileShort.txt"

L'éditeur se lance. Modifiez le fichier pour enlever les nombres 5 à 9 qui s'y trouvent et enregistrez le. Fermez l'éditeur.

Ouvrir et fermer l'éditeur tout le temps n'est pas très pratique. Pour pouvoir le lancer et éditer un fichier tout en continuant à taper des commandes, il faut le lancer en mettant un "&" à la fin de la ligne de commande :

Essayez pour voir comment cela fonctionne.

Pour éditer un fichier qui n'existe pas encore, c'est le même principe :

Ecrivez quelque chose (par exemple "Hello") et enregistrez le, ensuite affichez son contenu :

Liste des commandes vues

  • ls : afficher la liste des fichiers d'un dossier.
  • pwd : afficher le nom du répertoire actuel.
  • cd : se déplacer dans un autre répertoire.
  • mkdir / rmdir : créer / supprimer un dossier.
  • rm : supprimer un fichier.
  • cat : afficher le contenu d'un fichier.
  • gedit : éditer un fichier.

Voilà, vous savez tout ce qui est nécessaire pour le prochain cours !

Pensez à vous inscrire pour valider les cours et résoudre les exercices.