Débugue tes humanités Saison 2

Séance 03 - Bash ou comment industrialiser le terminal

Découverte de Bash, création de quelques scripts, détournements créatifs.

Chaire de recherche du Canada sur les écritures numériques, Bibliothèque des lettres et des sciences humaines, Ouvroir d'histoire de l'art et de muséologie numérique. — antoine.fauchie@umontreal.ca

  1. Qu’est-ce que Bash ?
  2. Cas d’usages 1 : créer et convertir des fichiers
  3. Cas d’usages 2 : création et exercice

1. Qu’est-ce que Bash ? #

  • Bash (Bourne-Again shell) est l’interpréteur en ligne de commande d’Unix (Linux, Mac)
  • un script Bash ou un script shell est un fichier (en .sh) qui comporte une ou plusieurs instructions ou commandes
  • ces commandes sont executées les unes à la suite des autres
  • c’est un très bon moyen d’automatiser des tâches

2. Cas d’usages 1 : créer et convertir des fichiers #

  1. vérifier que vous disposez de pandoc
  2. créer un fichier auto.sh
  3. créer une commande pandoc pour convertir du Markdown vers du HTML
  4. dans cette commande, remplacer le nom du fichier par $1
  5. tester le script

3. Cas d’usages 2 : création et exercice #

3. Cas d’usages 2 : création et exercice #

Atelier de création dans le cours FRA3715 Écriture et nouveaux médias (2021) #

  1. Performativité de l’écriture numérique
  2. Fonctionnement interactif d’un récit
  3. Écrire avec/selon la machine

3. Cas d’usages 2 : création et exercice #

Programmer un récit en Bash #

Possibles inspirations :

  • Test de Turing
  • Temps du récit
  • Qui-est-ce
  • Syndrome de la page blanche

3. Cas d’usages 2 : création et exercice #

Online Bash Shell #

Attention : Online Bash Shell n’a pas de sauvegarde automatique sans création de compte

ou

Création d’un fichier .sh puis bash fichier.sh dans le terminal #

3. Cas d’usages 2 : création et exercice #

Quelques commandes #

  1. Générer du texte
  2. Jouer avec les commandes de base
  3. Créer des rythmes
  4. Aligner/Couper/Renverser
  5. Texte en interaction

3. Cas d’usages 2 : création et exercice #

1. Générer du texte #

echo "texte"; 

ou définir par une valeur :

valeur="texte";
echo ${valeur}

ou afficher la valeur dans un texte :

valeur="texte";
echo "je suis du ${valeur}"

3. Cas d’usages 2 : création et exercice #

2. Jouer avec les commandes de bases #

Afficher la date :

horaire=`date`
echo "Jounal de bord du $horaire"

ou

horaire=$(date)
echo "Jounal de bord du $horaire"

Afficher la situation :

lieu=`pwd`
echo "Je me trouve toujours à bord du $lieu"

Demander mon identité : (hors interface en ligne)

identite=`whoami`
echo "Sur mon uniforme, une étiquette qui porte le nom de $identite"

3. Cas d’usages 2 : création et exercice #

3. Créer des rythmes #

Latence :

sleep 0.9 ;

Texte infini :

yes "texte";

Effacer les lignes précédentes :

clear

3. Cas d’usages 2 : création et exercice #

4. Aligner/Couper/Renverser #

Aligner :

T[0]='texte1'
T[1]='texte2'
echo ${T[0]} ${T[1]}

ou

T[0]='texte1'
T[1]='texte2'
echo ${T[*]}

Couper :

T[0]='texte non coupé'
echo ${T[0]}| cut -c1-5,9-15

Renverser :

echo "Je perds l'équilibre" | rev

3. Cas d’usages 2 : création et exercice #

5. Texte en interaction #

Interaction simple :

echo 'Entrez votre nom :' 
read p 
echo "Bonjour $p !"

Interaction par choix :

echo "To be or not to be ?"
            select i in être non-être; do
                if [ "$i" = "être" ]; then
                    echo "Sois";
                    break
                elif [ "$i" = "non-être" ]; then
                    echo "Tant pis"
                    break
                else
                    echo "Pas de troisième choix dans ce script"
                fi
        done

3. Cas d’usages 2 : création et exercice #

Exemple 1 #

3. Cas d’usages 2 : création et exercice #

Exemple 2 #

préalable : dans votre terminal

sudo apt-get espeak 

puis lancer script :

bash nom_fichier.sh

3. Cas d’usages 2 : création et exercice #

Pour plus d’informations sur les commandes bash #

Memo