Bonjour à tous,
Je dois faire un programme utilisable en ligne de commande, qui va tourner sous Linux, qui va comporter différentes actions, différents arguments pour chaque action, qui va devoir faire appel à des outils installés sur la machine (wget par exemple), exécuter des commandes SQL etc.
Cela pose différentes questions sur les outils à utiliser dont les thèmes sont :
1) La configuration
J'aimerais que ça s'utilise ainsi :
./leprogramme --action1 -p1 mon_paramètre_1 -p2 mon_paramètre_2
./leprogramme --action2 -p1 mon_paramètre_1 -p2 mon_paramètre_2 -p3 mon_paramètre_3
Et si possible un fichier de configuration qui va définir les paramètres par défaut pour chaque action (ou alors un fichier de paramétrage pour chaque action)
J'ai un peu regardé ce que proposait boost concernant cet aspect, ça m'avait l'air spécifique à un programme = une action. Je ne suis pas allé plus loin mais pensez-vous qu'il faille gérer ça "sois-même" ou que je puisse utiliser boost pour répondre à ces problématiques ?
2) L'utilisation de la console
Il faut que ça soit lisible et pas balancer 10.000 lignes de "statement" chaque seconde.
Comment faire pour avoir une sortie sur une ligne qui fait :
Mais sur une ligne qui se met à jour, plutôt que "consommer" une ligne dès que l'on a besoin d'indiquer une information (un avancement en l’occurrence) ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 [ ] 0% [.. ] 2% [.... ] 4% [...... ] 6%
Autre question :
Lorsque l'on appel un programme externe (exécuté par exemple via "system(wget http://www.ledomaine.com/data.zip)") pour transmettre la sortie et afficher une sortie de style :
Et que si le programme externe ne sort qu'une ligne qui se met à jour, ça n'affiche en sortie qu'une ligne qui se met à jour (et non pas X lignes par seconde) ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Telechargement de XXX - wget data.zip - 24% [========> ] 23,154,660 1.58MB/s eta 42s
Je pense que pour le moment ça sera déjà pas mal pour désépaissir le brouillard
Merci,
A bientôt
Partager