#1 Le 27/08/2009, à 16:49
- lauben
gnome-terminal executer dans plusieurs onglet des scripts à argument
Bonjour,
J'ai crée un script qui permette de lancer dans un terminal Gnome une connexion ssh.
Ce dernier prend en argument l'IP de la machine à charger.
Ce script fonctionne. Fichier lancerDistant.sh + arg
#!/usr/bin/expect -f
set force_conservative 1;
set timeout 6
send "spawn ssh -X -l user $argv\r"
expect "user@"
send "passwd\r"
interact
Je souhaite maintenant l'intégrer dans un autre script afin de lancer plusieurs onglet avec dans chacun d'eux une connexion ssh différente: (fichier lancer.sh)
#!/bin/sh
#Gnome
cmdTerm='gnome-terminal'
tabOption=' --tab'
commandOption='-e'
titleOption='--title'
listIPDistant="proxy1 proxy3 proxy3"
var="$cmdTerm";
for i in $listIPDistant
do
var="${var} ${tabOption} ${commandOption} ./lancerDistant.sh ${i} ${titleOption} ${i}"
done
echo $var
${var}
Du coup, le script "lancer.sh" se lance bien, mais le deuxieme script n'arrive pas à retrouver l'argument...
j'ai essayé, mais sans succès, de modifier la critique par (de rajouter des guillements quoi):
var="${var} ${tabOption} ${commandOption} \"./lancerDistant.sh ${i}\" ${titleOption} ${i}"
Mais c'est toujours un echec, j'obtiens:
scripts$ ./launch.sh
gnome-terminal --tab -e "./lancerDistant.sh proxy1" --title proxy1 --tab -e "./lancerDistant.sh proxy2" --title proxy2 --tab -e "./lancerDistant.sh proxy3" --title proxy3
L'argument de « --command/-e » n'est pas une commande valide : Le texte s'est terminé avant qu'un caractère de citation soit trouvé pour ". (Le texte était « "./lancerDistant.sh »)
Quelqu'un aurait il la solution ?
cordialement,
Benoit
Hors ligne
#2 Le 27/08/2009, à 22:08
- wido
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
Bonjour,
essaye de remplacer:
#!/bin/sh
#Gnome
cmdTerm='gnome-terminal'
tabOption=' --tab'
par
#!/bin/sh
#Gnome
cmdTerm='gnome-terminal'
tabOption='--tab'
sinon je ne vois pas (niveau faible en programmation )
Hors ligne
#3 Le 23/06/2010, à 23:12
- lauben
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
Bonjour,
Je déterre ce post que j'ai créé il y a près d'un an parce que je me re-heurte au même problème.
Quelqu'un connait il la solution ?
Pour résumer je veux executer un script avec arguments via la ligne de commande de gnome-terminal.
Cordialement,
Benoit
Hors ligne
#4 Le 24/06/2010, à 07:37
- credenhill
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
hello
ouvre un terminal avec 3 onglets dans lesquels s'exécute le script gnm avec paramètres
$ gnome-terminal --maximize --tab -e "./gnm aaa 1 2 3" --tab -e "./gnm bbb 11 22 33 " --tab -e "./gnm ccc ddd"
$ cat gnm
#!/bin/bash
for p in $* ; do echo p=$p; done
$SHELL
$
Hors ligne
#5 Le 24/06/2010, à 18:40
- Hizoka
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
tres interressant ce :
gnome-terminal --maximize --tab
connaitrais tu l'équivalent pour konsole ?
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#6 Le 25/06/2010, à 12:09
- credenhill
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
non je n'ai pas konsole, rien d'approchant dans konsole -help-all ?
Hors ligne
#7 Le 25/06/2010, à 16:45
- Hizoka
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
--new-tab :
il ne reste plus qu'avoir comment y associer une commande.
merci
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#8 Le 26/06/2010, à 07:50
- credenhill
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
-e <command> [ arguments ] ?
Hors ligne
#9 Le 26/06/2010, à 08:38
- Hizoka
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
quand je fais ça, ça ne m'ouvre pas d'onglet....
ma konsole clignote une fois et pis c'est tout (j'ai essayé en y incorporant un sleep mais pas de changement)
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#10 Le 22/07/2010, à 01:07
- lauben
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
C'est normal qu'il se referme, dans le profil par défaut de gnome terminal, quand la commande est terminée, le terminal se referme. Parce qu'il considère ici qu'il n'y a qu'une cmd à executer !! Enduite la session est finie.
La solution que j'ai trouvée pour l'instant c'est de lancer la commande via un script !
gnome-terminal --tab --title "blabla" -e ./script1.sh --tab --title "blabla2" -e ./script2.sh .
Sinon, pour des connexions ssh, ca marche directement tant que la connexion n'est pas terminée.
Dans les fihiers scripts on utilise comme interpreteur #!/usr/bin/expect -f, puis on met les commandes et on finit par interact qui nous rend la main.
Benoit
Hors ligne
#11 Le 22/07/2010, à 07:00
- credenhill
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
tu peux aussi terminer ton script par : $SHELL
il te rendra la main
Hors ligne
#12 Le 13/06/2012, à 09:03
- vieurou
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
Bonjour,
Je déterre ce post car je cherche la même chose , càd la commande pour ouvrir un nouvel onglet , mais pour yakuake.
Merci
Hors ligne
#13 Le 13/06/2012, à 18:39
- nesthib
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
Les solutions de la forme :
gnome-terminal --tab -e […]
fonctionnent uniquement si la commande lancée ne se termine pas ou ne se détache pas du terminal.
Autrement ce n'est PAS possible… du moins pas simplement.
un bidouillage qui fonctionne :
gnome-terminal --title mysshterminal
xdotool windowfocus $(xdotool search --name mysshterminal)
for proxy in proxy1 proxy3 proxy3
do
xdotool key ctrl+shift+t
xdotool type "ssh ${proxy}"
xdotool key Return
done
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#14 Le 14/06/2012, à 08:50
- credenhill
Re : gnome-terminal executer dans plusieurs onglet des scripts à argument
hello
fonctionnent uniquement si la commande lancée ne se termine pas ou ne se détache pas du terminal.
qu'entends tu pasr là ?
et comme ça ?
gnome-terminal --tab -e "bash -c date;$SHELL"
Hors ligne