Je suis très nouveau en programmation. La tâche suivante semble très simple mais je ne sais pas comment le faire. Appréciez si quelqu'un peut me donner quelques conseils. J'utilise Linux OS. Je voudrais créer un programme CLI et laisser l'utilisateur l'exécuter dans un terminal shell. Je prévois d'utiliser le script shell Bash pour créer ce programme, mais C++ ou Perl devrait aussi convenir. Le programme CLI accepte les commandes de l'utilisateur, les exécute et affiche éventuellement le résumé des résultats à l'écran. Lorsque le programme CLI est en cours d'exécution, je voudrais qu'il affiche toujours une "invite de shell" sur le côté gauche du terminal shell, tout comme l'invite du shell Bash. L'invite indique que le programme CLI attend que l'utilisateur saisisse une commande et appuie sur la touche de retour.Comment créer un programme CLI avec "shell prompt"?
[[email protected] user]$ # This is Bash shell
[[email protected] user]$./CliApp.sh
CliApp > # The CLI program is running, user can type in command here
CliApp > exit
[[email protected] user]$ # Now the user has returned to the Bash shell
Je pense que je sais comment imprimer quelque chose sur l'écran et d'obtenir des entrées des utilisateurs, mais je trouve qu'il est très professionnel. Je crois qu'il existe une meilleure façon de créer ce genre de programme.
Quelqu'un peut-il me donner quelques conseils sur la façon de créer ce genre de programme? Appréciez si vous pouvez me donner les liens vers un exemple de programme. Merci.
Montrez ce que vous avez déjà et posez des questions spécifiques à ce sujet. –
quoi, exactement, pensez-vous semble non professionnel? L'exemple que vous avez fourni ressemble à l'exécution de commandes depuis un shell. Avez-vous des exemples d'éléments non professionnels? – atk
Désolé pour la confusion. Je voudrais créer une invite de shell pour mon programme. L'invite doit se souvenir de "l'environnement" où l'utilisateur se trouve actuellement. L'exemple est le logiciel Cisco IOS. Lorsque l'utilisateur se connecte pour la première fois, l'invite est "Router>". Après avoir entré le mot de passe, l'utilisateur devient "Router #". Si l'utilisateur saisit la commande "terminal de configuration". Il deviendra "Router (config) #". Si l'utilisateur veut configurer une interface, l'invite deviendra "Router (config-if) #". L'environnement déterminera quelles commandes l'utilisateur peut utiliser. Certaines commandes ne peuvent être exécutées que dans certains environnements. – BGN