Bonjour,
Je suis en ce moment en train de réécrire certains de mes utilitaires.
Le problème sur lequel je bute est la génération à l’aide d’une boucle "for" des choix d’une liste de boutons radio en dialog.
Pour bien vous faire comprendre, testez ceci :
Normalement, la liste des utilisateurs de votre système doit apparaître.
Code : Sélectionner tout - Visualiser dans une fenêtre à part for Utilisateur in $(grep /home /etc/passwd|awk -F':' '{print $1}'); do echo "${Utilisateur}"; done
Maintenant, si je formate l’affichage pour le préparer à l’inclusion dans la radiolist de dialog :
Enfin, si je tente de mettre le tout dans un dialog :
Code : Sélectionner tout - Visualiser dans une fenêtre à part for Utilisateur in $(grep /home /etc/passwd|awk -F':' '{print $1}'); do echo "${Utilisateur}" "Effacement de : ${Utilisateur}" "off"; done
Ben là, y a pas moyen. Pour 2 utilisateurs enregistrés, j’ai 4 lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 DeleteAccount=`dialog --stdout --backtitle "${BACK_TITLE}" \ --title "Effacement dun utilisateur" \ --radiolist "Compte à effacer :" 18 65 10 \ \`for Utilisateur in $(grep /home /etc/passwd|awk -F':' '{print $1}'); do echo "${Utilisateur}" "Effacement de : ${Utilisateur}" "off"; done\``
La raison m’échappe mais s’il est généré (enfin, de la manière dont je le fait…), le second champ d’un radiolist ne supporte pas de contenir des espaces.
-----
Donc, je m’en remets à vous si vous avez des idées, n’hésitez pas.
Merci.
Partager