Le point d'exclamation magique
Une cellule de code, normalement, exécute du Python. Mais si tu commences une ligne par un point d'exclamation !, cette ligne n'est plus envoyée à Python : elle est envoyée au système Linux qui fait tourner ton calepin.
Pourquoi ? Parce que l'ordinateur prêté par Colab est une machine Linux. Le ! est la petite porte qui te laisse lui donner des ordres directement, comme dans un terminal.
# une ligne de Python normale print("Bonjour") !ls # cette ligne-ci part vers Linux : liste les fichiers !pwd # Linux encore : affiche le dossier courant
Retiens le réflexe : devant une commande Linux, on met un !. Sans lui, Python essaierait de comprendre ls comme une variable... et planterait.
À quoi ça sert vraiment
Quatre super-pouvoirs que tu vas utiliser tout le temps cette semaine :
Fouiller tes fichiers
!ls, !pwd, !cat fichier pour voir ce qui se trouve sur l'ordinateur prêté.
Installer un outil
!pip install ... ajoute une bibliothèque Python que Colab n'a pas encore.
Télécharger des données
!wget adresse rapatrie un fichier depuis le Web directement dans Colab.
Décompresser une archive
!unzip archive.zip ouvre un fichier compressé sans rien installer.
Essaie une cellule terminal
Voici une cellule de Colab pour de faux, avec quelques fichiers déjà présents. Clique une commande toute prête, ou tape la tienne, puis exécute.
Les commandes les plus utiles
| Commande | Ce qu'elle fait | Exemple |
|---|---|---|
ls | Liste les fichiers du dossier courant | !ls |
pwd | Affiche le chemin du dossier où tu te trouves | !pwd |
cat | Affiche tout le contenu d'un fichier texte | !cat planetes.csv |
head | Affiche seulement les premières lignes | !head -n 5 planetes.csv |
wc -l | Compte le nombre de lignes d'un fichier | !wc -l planetes.csv |
mkdir | Crée un nouveau dossier | !mkdir donnees |
pip install | Installe une bibliothèque Python | !pip install pandas |
wget | Télécharge un fichier depuis le Web | !wget https://.../data.csv |
unzip | Décompresse une archive .zip | !unzip donnees.zip |
Le pont entre Python et Linux
Petit bonus puissant : tu peux glisser une variable Python dans une commande Linux en l'entourant d'accolades { }. Colab remplace l'accolade par la valeur avant d'envoyer la ligne à Linux.
monDossier = "donnees" !ls {monDossier} # devient : !ls donnees !mkdir {monDossier} # crée le dossier dont le nom est dans la variable
C'est le meilleur des deux mondes : Python pour réfléchir, Linux pour agir sur les fichiers.
Le piège du « cd » qui ne reste pas
Chaque ligne avec ! ouvre un terminal tout neuf, fait son travail, puis le referme. Résultat : un !cd est oublié dès la ligne suivante.
!cd donnees !ls # surprise : on est revenu au dossier de départ !
⚠️ La solution : le pourcentage
Pour changer de dossier pour de bon, on utilise non pas le ! mais le pourcentage % (une « commande magique » de Colab) :
%cd donnees # là, le changement reste !ls # on est bien dans donnees/
Mémo simple : ! pour une commande qui agit puis oublie ; %cd quand tu veux vraiment te déplacer.
Pour aller plus loin
Ces commandes touchent à l'espace de fichiers de Colab. Trois trucs voisins t'aideront :
- Les systèmes d'exploitation : d'où vient cette machine Linux que tu pilotes dans Colab, et pourquoi le
!existe. - Tes fichiers Colab s'évaporent : pourquoi ce que tu télécharges avec
!wgetdisparaît à la fin de la session, et comment le garder. - Envoyer ton fichier dans Colab : déposer un fichier depuis ton ordinateur, l'alternative au
!wget.