Commande shell pour ouvrir un terminal qui lance une commande
Résolu/Fermé
Bonsoir,
Je cherche à coder un petit script shell qui, lorsqu'on le lance, ouvrira plusieurs nouveaux terminaux qui devront lancer chacun une commande pour afficher des données utiles à mon travail (d'où l'intérêt de conserver le terminal "parent" propre). Cependant, je ne sais pas quelle option utiliser avec xterm pour donner une commande au terminal fraîchement ouvert.
Avez-vous une idée ? Cela est-il d'ailleurs possible ? Je vous remercie d'avance pour votre temps, je ne fais que débuter pour ce qui est du shell.
Je cherche à coder un petit script shell qui, lorsqu'on le lance, ouvrira plusieurs nouveaux terminaux qui devront lancer chacun une commande pour afficher des données utiles à mon travail (d'où l'intérêt de conserver le terminal "parent" propre). Cependant, je ne sais pas quelle option utiliser avec xterm pour donner une commande au terminal fraîchement ouvert.
Avez-vous une idée ? Cela est-il d'ailleurs possible ? Je vous remercie d'avance pour votre temps, je ne fais que débuter pour ce qui est du shell.
A voir également:
- Commande pour ouvrir un terminal linux
- Terminal de fret shein - Forum Consommation & Internet
- Commande terminal mac - Guide
- Comment ouvrir un fichier epub ? - Guide
- Invite de commande - Guide
- Ouvrir un fichier .bin - Guide
2 réponses
Salut,
man xterm
-e programme [ arguments ... ]
spécifie le programme (et ses arguments de ligne de commande) qui doit être lancé dans la fenêtre xterm. Cette option positionne aussi le titre de la fenêtre et le nom d'icône au nom de base du programme en cours d'exécution si ni -T ni -n ne sont spécifiés sur la ligne de commande. Ce doit être la dernière option de la ligne de commande xterm.
l'option -e suivie du nom de la commande à exécuter lancera cette commande dans la nouvelle fenêtre.
Tu peux faire quelque chose du genre :
#!/bin/sh
xterm -e "commande 1" &
xterm -e "commande 2" &
xterm -e "commande 3" &
man xterm
-e programme [ arguments ... ]
spécifie le programme (et ses arguments de ligne de commande) qui doit être lancé dans la fenêtre xterm. Cette option positionne aussi le titre de la fenêtre et le nom d'icône au nom de base du programme en cours d'exécution si ni -T ni -n ne sont spécifiés sur la ligne de commande. Ce doit être la dernière option de la ligne de commande xterm.
l'option -e suivie du nom de la commande à exécuter lancera cette commande dans la nouvelle fenêtre.
Tu peux faire quelque chose du genre :
#!/bin/sh
xterm -e "commande 1" &
xterm -e "commande 2" &
xterm -e "commande 3" &
Modifié par Julie le 16/10/2012 à 02:37
Edit : Après quelques essais, je me rends compte que le terminal ouvert ne sert qu'à executer un programme, puis se ferme. Dans mon cas, il faudrait qu'il reste ouvert, puisque l'une des commandes à faire est par exemple :
cat /u/shared/$1/public/* | grep -n ERREUR
J'ai donc besoin d'avoir un retour, ce qui n'est pas le cas ici puisque le terminal se ferme une fois la commande executée.