La commande tput

Dernière mise à jour le 17 novembre 2009 à 13:58 par marlalapocket
Publié par jipicy

Comment gérer l'adressage du curseur




Introduction


La commande "tput" permet de gérer l'adressage du curseur et les séquences de contrôle du terminal.
Vous pourrez notamment faire une mise en page d'un script interactif (à la manière d'un formulaire par exemple) ou personnaliser votre prompt (voir à cet effet : [ Personnaliser son "prompt"].

Syntaxe


tput commande [argument...]

Exemple


Voici un petit script illustrant les possibilités de la commande "tput", pour l'adressage du curseur.

#!/bin/bash
# script_tput.sh

#### Initialisation des variables ####

#+ Mode normal
ResetColor="$(tput sgr0)"
# "Surligné" (bold)
bold=$(tput smso)
# "Non-Surligné" (offbold)
offbold=$(tput rmso)

# Couleurs (gras)
#+ Rouge
Red="$(tput bold ; tput setaf 1)"
#+ Vert
Green="$(tput bold ; tput setaf 2)"
#+ Jaune
Yellow="$(tput bold ; tput setaf 3)"
#+ Bleue
Blue="$(tput bold ; tput setaf 4)"
#+ Cyan
BlueCyan="$(tput bold ; tput setaf 6)"

#### Fin initialisation variables ####

# Effacement du terminal
clear

# Adressage du curseur ligne 0 colonne 2
tput cup 0 2
echo "Entrez les informations demandées dans le champ ayant le curseur."
# Adressage du curseur ligne 1 colonne 2
tput cup 1 2
echo "Appuyez sur Entrée pour passer au champ suivant."
# Adressage du curseur ligne 3 colonne 20
tput cup 3 30
echo "${bold}Questions/Réponses${offbold}"

# Pré-affichage des champs
tput cup 5 5
echo -e "Nom : \c"
tput cup 7 5
echo -e "Prénom : \c"
tput cup 9 5
echo -e "Age : \c"

# Facultatif
# Pré-affichage des données
tput cup 12 2
echo -e "Votre nom est : "
tput cup 13 2
echo -e "Votre prénom est : "
tput cup 14 2
echo -e "Vous avez  ans. "

#### Interaction du script ####
# Adressage du curseur ligne 5 colonne 5
tput cup 5 5
echo -e "Nom : \c"
read nom
# Adressage du curseur ligne 7 colonne 5
tput cup 7 5
echo -e "Prénom : \c"
read prenom
# Adressage du curseur ligne 9 colonne 5
tput cup 9 5
echo -e "Age : \c"
read age

#### Affichage des réponses ####
# Adressage du curseur ligne 12 colonne 2
tput cup 12 2
echo -e "${Green}Votre nom est : ${ResetColor}"${Red}$nom${ResetColor}
# Adressage du curseur ligne 13 colonne 2
tput cup 13 2
echo -e "${Green}Votre prénom est : ${ResetColor}"${BlueCyan}$prenom${ResetColor}
# Adressage du curseur ligne 14 colonne 2
tput cup 14 2
echo -e "${Green}Vous avez ${Yellow}$age ${Green}ans. ${ResetColor}"
# Adressage du curseur ligne 20 colonne 0
tput cup 20 0

Screenshots


Écran d'accueil



Saisies



Affichage final


Meilleures réponses pour « La commande tput » dans :
Commandes Linux Voir Tableau des principales commandes Linux Commande Description équivalent DOS ls liste le contenu d'un répertoire dir cd change de répertoire cd cd .. répertoire parent cd.. mkdir crée un nouveau...
Commandes UNIX Voir Tableau des principales commandes UNIX Commande Unix Description Options ls liste le contenu d'un répertoire -a Affiche tous les fichiers, y compris les fichiers cachés ...
Systèmes d'exploitation - DOS - Commandes Voir Commande Description dir liste le contenu d'un répertoire cd change de répertoire cd .. répertoire parent md ou mkdir crée un nouveau répertoire deltree supprime un répertoire, ainsi que l'ensemble...
Liste des commandes Windows VoirRemarques : Certaines commandes sont dangereuses (l’exemple de SYSKEY) et peuvent causer des problèmes pouvant conduire au formatage. D’autres commandes ne sont pas exécutables sous Windows XP ou des versions antérieures, je ne les ai pas...
[Windows] Démarrer/arrêter un service en ligne de commande VoirL'outil netsh (netsh.exe) permet d'automatiser le démarrage ou l'arrêt d'un service grâce à la ligne de commande suivante : Pour démarrer un service : Net start nom_du_service Pour arrêter un service : Net stop nom_du_service Cela nécessite les...
Commandes IP relatives aux réseaux sous Windows VoirIl est parfois très utile de connaître les commandes IP, pour analyser voire configurer ses réseaux TCP/IP. Voici la liste de ces commandes à utiliser dans une fenêtre DOS...
Les commandes AS/400 VoirLes commandes de l’AS/400 Il existe environ un millier de commandes dans l'OS/400, regroupées sous le nom de « Langage de Contrôle ». Un utilisateur pourra les lancer depuis la ligne Option ou Commande située au bas de l'écran, quand celle-ci est...
Collection CommentÇaMarche.net