Outils pour utilisateurs

Outils du site


dev:bash:exemples:verifier_mode_execution_interactif

:TODO_DOCUPDATE:

Bash : vérifier le mode d'exécution interactif

Lorsque Bash est lancé en mode interactif l'option -i est précisée et la variable PS1 est définie. Les options actives sont listées dans la variable $-.

Le script ~/.basrc utilise la valeur de cette variable pour déterminer si l'exécution courante est interactive ou non et adapter son comportement.

Depuis un shell interactif lorsque l'utilisateur invoque une commande ou un autre script, un nouvel environnement est créé par copie de l'environnement courant (fork) puis par lectures successives des fichiers /etc/bash.bashrc et ~/.bashrc.

:TODO: Tester le fonctionnement du fork et la séquence d'appel des scripts

  • Dans l'environnement interactif courant créer une variable et l'exporter
  • Modifier le script ~/.basrc ajouter une variable
  • Invoquer une nouvelle commande et vérifier la présence des variables

La commande test

La commande test intègre une option intéressante -t permettant de vérifier si un descripteur de fichier quelconque FD est lié à un terminal.

# Retourne vrai si le descripteur 0 (stdin) est lié au terminal donc au clavier
[ -t 0 ]
 
# Retourne vrai si le descripteur 1 (stdout) est lié au terminal donc à l'écran
[ -t 1 ]

Références

dev/bash/exemples/verifier_mode_execution_interactif.txt · Dernière modification : 2023/01/19 09:08 de yoann