Nouveau : Datasets open source gratuits disponibles !Decouvrir →
🐧
Debutant 20 min Bash

Commandes Linux essentielles

Pourquoi Commandes Linux essentielles ?

Dans le monde des développement logiciel, la gestion des systèmes d'exploitation est un aspect fondamental. Les développeurs doivent avoir une bonne connaissance des commandes Linux pour automatiser les tâches, gérer les fichiers et dossiers, et assurer une maintenance efficace de leurs environnements de travail.

Un cas d'usage concret serait la gestion quotidienne d'un serveur dédié à une application web. Les développeurs ont besoin de vérifier le statut du système, de sauvegarder les fichiers, de démarrer et arrêter des services, et de gérer les journaux pour dépanner les problèmes.

Prerequis

  • Connaissance de base du terminal Unix
  • Un environnement Linux (peu importe le distribution)
  • Outils à installer : git pour le contrôle de version, curl ou wget pour télécharger des fichiers, et nano ou vim pour l'édition de fichiers

Concepts fondamentaux

1. Navigation dans le système de fichiers

La navigation est essentielle pour trouver les fichiers et dossiers nécessaires.

## Affiche le contenu du dossier courant
ls

## Change de dossier
cd /chemin/vers/dossier

## Retourne au dossier parent
cd ..

## Allez dans votre home directory
cd ~

## Affiche le chemin complet du dossier actuel
pwd

2. Création et suppression de fichiers et de dossiers

## Crée un nouveau fichier vide
touch nom_du_fichier.txt

## Crée un nouveau dossier
mkdir nom_du_dossier

## Supprime un fichier
rm nom_du_fichier.txt

## Supprime un dossier (recursivement)
rm -r nom_du_dossier

3. Copie et déplacement de fichiers et de dossiers

## Copie un fichier
cp source.txt destination.txt

## Déplace un fichier
mv source.txt destination.txt

## Copie récursivement un dossier
cp -r source_directory destination_directory

4. Affichage du contenu des fichiers

## Affiche le contenu d'un fichier
cat nom_du_fichier.txt

## Affiche les 10 premières lignes d'un fichier
head nom_du_fichier.txt

## Affiche les 10 dernières lignes d'un fichier
tail nom_du_fichier.txt

## Affiche le contenu d'un fichier et met à jour en temps réel
tail -f nom_du_fichier.log

Mise en pratique : projet fil rouge

Projet : Gestionnaire de tâches simplifié

Étape 1 : Création du dossier et initialisation du projet

## Crée un nouveau dossier pour le projet
mkdir todo_app
cd todo_app

## Initialise un dépôt Git
git init

Étape 2 : Création des fichiers de configuration et des scripts

Créer les fichiers suivants :

  • todo.sh : Script principal pour gérer les tâches.
  • todo.list : Fichier contenant la liste des tâches.
## Crée le fichier todo.sh avec nano
nano todo.sh

## Ajoute ce contenu dans todo.sh
#!/bin/bash

if [ "$1" == "add" ]; then
    echo "$2" >> todo.list
elif [ "$1" == "list" ]; then
    cat todo.list
fi

Étape 3 : Rendre le script exécutable et l'exécuter

## Rend le fichier todo.sh exécutable
chmod +x todo.sh

## Ajoute une tâche
./todo.sh add "Faire la lessive"

## Liste les tâches
./todo.sh list

Erreurs frequentes et debugging

1. Erreur : Fichier non trouvé

## ❌ Mauvais
cat nom_du_fichier.txt

## ✅ Correct
if [ -f "nom_du_fichier.txt" ]; then
    cat nom_du_fichier.txt
else
    echo "Fichier non trouvé"
fi

2. Erreur : Permission refusée

## ❌ Mauvais
rm fichier_protégé.txt

## ✅ Correct
sudo rm fichier_protégé.txt

3. Erreur : Commande inconnue

## ❌ Mauvais
git status

## ✅ Correct
if command -v git &> /dev/null; then
    git status
else
    echo "Git n'est pas installé"
fi

Pour aller plus loin

  1. Manipulation de fichiers avancée : Apprenez à utiliser les commandes grep, awk, et sed pour traiter des données en texte.

  2. Contrôle de version avancé : Apprenez à utiliser des fonctionnalités avancées de Git comme les branches, les conflits et les reverts.

  3. Scripts Shell avancés : Apprenez à écrire des scripts Bash plus complexes, en utilisant les boucles, les fonctions et les structures de contrôle.

Défi pratique

Créez un script Bash qui prend en entrée une URL et télécharge le contenu de cette URL dans un fichier. Assurez-vous que le script gère les erreurs potentielles (par exemple, si l'URL est invalide ou si la connexion échoue).

#!/bin/bash

if [ "$#" -ne 1 ]; then
    echo "Usage: $0 <url>"
    exit 1
fi

url=$1

if ! curl --output /dev/null --silent --head --fail "$url"; then
    echo "URL invalide ou indisponible"
    exit 1
fi

filename=$(basename "$url")
curl -o "$filename" "$url"

echo "Contenu téléchargé et enregistré dans $filename"

Ce script vérifie que le nombre d'arguments est correct, teste l'accessibilité de l'URL avec curl, et télécharge le contenu dans un fichier nommé comme la page web.

Besoin d'aide sur Bash ?

Besoin d'aide sur un projet technique ? Decrivez-le pour des conseils personnalises.

Recevoir des conseils

Pages liees

Chaque semaine, le meilleur de la tech francaise

Tendances, salaires, outils et opportunites — directement dans votre boite mail.

Gratuit. Desabonnement en un clic. Pas de spam.