Bonjour, dans mon programme C++, j'ai besoin de faire des testes de conditions BASH ( if [ -a /home/user/unFichier.tx]; then ). Je sais que je peut reecrire ces trucs en c++, mais ce n'est pas le but, le but est vraiment de tester des conditions bash, c'est tout. Pour cela, bash donne une commande nomme "test". C'est cette commande qui verifie la veracitee des conditions en bash. La reponse de cette commande va dans dans la variable locale $?. Pour executer le teste, j'ai fait 2 popen, un qui execute la commande teste et l'autre un "echo $?". Mais cela ne fonctionne pas. Voici mes questions:
Pourquoi?
Comment faire pour recuperer directement une variable bash locale sans passer par un fork+exec ou un popen?
Si possible, comment avoir la liste de ces variables locale? Il est possible de le faire facilement pour les variables systemes, allors si les variables locale ne sont pas implementer par le terminal lui meme, il est surement possible d'en avoir la liste aussi.
Ou si ma methose ne va nul part, comment est-ce que je fait sans reeimplementer la syntax au complet?
Actuelement, j'utilise un petit script avec mon popen (test $1; echo $?), ce qui fonctionne, mais est solidement mauvais point de vue qualitee de code, trouver une meilleur solution est assez important, meme si c'est seulement pour ma conaissance personelle.
Partager