Actions

Cours

Manipulation de fichiers avec Bash

De GBLL, TAL, ALAO, etc.

Cette page a pour objectif de vous présenter quelques commandes bash pour manipuler des fichiers et du texte sur votre ordinateur.

Installation de Bash

  • Si vous êtes sur Windows, vous avez plusieurs 2 possibilités :
    • Installer Bash For Windows, le plus simple pour une utilisation limitée, typiquement Git en ligne de commande.
    • Activer le terminal Linux/Bash natif de Windows10, qui vous permettra d'utiliser la plupart des commandes Linux.
  • Si vous êtes sur Mac, il suffit d'ouvrir votre terminal.
  • Si vous êtes sur Linux, il suffit d'ouvrir votre terminal.


Quelques tutos pouvant aider :


Ouvrir le terminal Bash

(parmi de nombreuses façons d'ouvrir votre terminal)

  • WINDOWS avec Git Bash : Dans le dossier de votre choix, clic droit puis Git Bash Here ;
  • Linux : ctrl+alt+t, ou dans un dossier clic droit puis ouvrir dans un terminal ;
  • Mac : entrez "terminal" dans le dock.

Certaines commandes présentées sur cette page sont susceptibles de ne pas fonctionner avec Bash For Windows (qui est un peu limité).

D'autres tuto :

Bases de la base

Redirection des entrées/sorties 🔃

  • < : Lire depuis un fichier d'entrée
  • > : Écrire dans un fichier de sortie (crée ou écrase le fichier de sortie)
  • >> : Append à la suite, sans écraser le fichier de sortie
  • | : Rediriger la sortie de la commande précédente vers l'entrée de la commande suivante (pipe)

Commandes basiques de navigation ⛵

  • pwd : Affiche le chemin absolu depuis la racine jusqu'au rép. courant
  • cd <chemin> : Aller vers <chemin> (absolu ou relatif à partir du rép. courant)
    • cd sousDossier/ : Aller dans sousDossier
    • cd ../ : Aller dans le répertoire parent
    • cd / : Aller à la racine de l'ordinateur (sur Windows, il s'agit du dossier où est installé Git)
    • cd : Revenir au répertoire Home
  • ls : Liste les fichiers et dossiers présents dans le répertoire courant
    • ls -F : idem, liste que les fichiers
    • ls -F /home : Liste les fichiers dans le rép. /home
    • ls -a : Liste également les fichiers et dossiers cachés
    • ls -l : Affiche le détail de chaque élément
    • ls -sh : Affiche la taille
    • ls -shS : Affiche la taille et trie par taille
    • ls -R : Récursif : détail le contenu de chaque sous-répertoires

Manipulation de fichiers

  • cat fichier.txt : Affiche le contenu du fichier dans le terminal
    • more fichier.txt : Afficher le contenu du fichier petit à petit (appuyer sur espace ou entrée pour afficher plus, ctrl+c pour quitter)
    • vim fichier.txt : Éditer le fichier.txt avec vim (éditeur en ligne de commande)
    • nano fichier.txt : Éditer le fichier.txt avec nano (éditeur en ligne de commande)
    • touch fichier.txt : Créer un fichier nommé fichier.txt
    • cp fichier.txt nouveauNom.txt : Copie fichier.txt et le renomme en "nouveauNom.txt"
    • mv fichier.txt nouveauNom.txt : Renomme fichier.txt en "nouveauNom.txt"
    • cp fichier.txt sousDossier/ : Copie fichier.txt dans le répertoire "sousDossier"
    • mv fichier.txt sousDossier/ : Déplace fichier.txt vers le répertoire "sousDossier"
    • rm fichier.txt : Supprime fichier.txt (Attention, pas de passage par la corbeille)
    • rm -y fichier.txt : Supprime en demandant confirmation

Manipulation de dossiers

  • mkdir nomDossier : Crée un nouveau dossier "nomDossier"
  • cp -R nomDossier ../ : Copie le dossier nomDossier dans le répertoire parent
  • mv -R nomDossier ../ : Déplace le dossier nomDossier dans le répertoire parent
  • rm -R nomDossier : Supprime le dossier nomDossier


Analyses et manipulations un peu plus avancées

  • wc fichier.txt : Affiche le nombre de lignes, nombe de mots et nombre de caractères de fichiers.txt
    • wc *.txt : Affiche les infos pour chaque fichier .txt
    • wc -l fichier.txt : Affiche que le nombre de lignes
    • wc -w : Affiche que le nombre de mots
    • wc *.txt > monFichier.txt : Enregistre l'output de wc dans monFichier.txt
  • ls -l monDossier | wc -l : Compte les fichiers dans le répertoire monDossier