Vous n'êtes pas identifié(e).
ces variables serraient renseignés par mes soins en fonction de ce que je souhaite voir apparaître sur mon bureau.
Dans mon idée je pensais mettre 0 aux variables non utilisées ce qui m'amenait a un truc du style :
et pareil pour conky.
Le probleme c'est que quand je lance le premier « tint2 » (tint2 -c $HOME/.config/tint2/$PremierTint2) cela empêche le lancement des suivants.
Pour que cela fonctionne il faudrait des « & » entre les différents « lancement »
exemple :
ainsi de suite.
Auriez vous une idée qui me permette a la fois de tester si il y a zéro dans la variable et qui me permettrait en même temps de lancer tous les tint2 et tous les conky en une seul ligne séparée par de « & » ?
d'avance merci pour votre aide.
Daan
Dernière modification par daan (10-05-2012 21:15:21)
Hors ligne
Y − 3HG − Auto-hébergé
Hors ligne
saque eud dun (patois chtimi : fonce dedans)
Hors ligne
Il me semble que le double && permet de passer outre à l'échec de la commande associée qui précède.
A mon avis, c'est plutôt || (ou logique) pour passer outre l'echec de la première commande.
cmd1 && cmd2 : cmd2 est exécutée si le retour de cmd1 est égal à 0 (en général commande executée sans échec)
cmd1 || cmd2 : cmd2 est exécutée si le retour de cmd1 est différent de 0 (en général échec de la commande)
cmd1 & : permet de lancer cmd1 en arrière plan. Donc, une suite de cmd & lance les commandes les unes après les autres sans attendre les retours. C'est pour cela que le script fonctionne avec les simple & selon moi.
Ben
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Le & simple permet de détacher la commande du shell en cours.
Le && double permet de détacher la commande et de passer à la suivante, ce n'est pas un ET logique.
Le || est bien un OU logique.
Pour les opérations logiques et afin de clarifier au mieux les scripts, l'utilisation des opérateurs -a et -o, respectivement AND et OU, entre les variables à tester est préferables.
Si j'ai $PremierTint2 ET $DeuxièmeTint2 ALORS...
Pour tester les fonctions logiques, essayez de créer un compteur simple et voyez les résultats :
Vous vous apercevrez qu'il n'y a pas de fonction logique ici.
Quelques combinaisons possibles :
Devrez vous donner :
Dans notre cas ici présent, l'ideal serait de créer une structure sous forme de tableau et d'itérer chaque membre afin d'executer ou non une commande. Le répertoire de Tint2 ainsi que celui de conky étant constant, une variable chemin peut être déclarée.
La construction d'un tableau pour si peu de variables peut semblait tiré par les cheveux, mais c'est aussi un bon exercice de structuration
@+
Zoroastre.
Dernière modification par zoroastre74 (30-04-2012 12:45:32)
Hors ligne
Yep!
Le & simple permet de détacher la commande du shell en cours.
Le && double permet de détacher la commande et de passer à la suivante, ce n'est pas un ET logique.
Es-tu sur de ça ?
Il me semble que & passe la commande à l'arrière plan sans la détacher du shell en cours. Si on ferme le shell, la commande est interrompue. C'est plutôt nohup qui détache la commande du shell en cours.
Par ailleurs le && ne passe à la commande suivante que si sa valeur de retour est égal à 0 sans la détacher du shell en cours (puisqu'il faut attendre la valeur de retour).
Ceci dit, c'est vrai que je n'aurais pas du parler d'opérateurs logique dans cette affaire. Mea Culpa
Ben
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Hors ligne
Il me semble que & passe la commande à l'arrière plan sans la détacher du shell en cours. Si on ferme le shell, la commande est interrompue. C'est plutôt nohup qui détache la commande du shell en cours.
Par ailleurs le && ne passe à la commande suivante que si sa valeur de retour est égal à 0 sans la détacher du shell en cours (puisqu'il faut attendre la valeur de retour).
Lorsque je parle de "détacher", je ne nie pas que le processus soit lancer en tâche de fond. Le shell en cours peut être repris pour lancer d'autres commandes. D'ailleurs, un top te montrera que la commande lancée avec le & sera positionnée dans un nouveau bash.
Si tu fermes le shell en cours, la commande n'est pas interrompue.
Par contre, effectivement, le && suit son cours si la commande précedente est valide et validé. Là, j'ai effectivement dit une bétise
Il n'y a pas de détachement.
@+
Zoroastre.
Hors ligne
Hors ligne
Si je ferme la console, gedit se ferme aussi
Ben
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
lorsque je ferme le shell, geany court toujours...
C'est quoi ta console ??? (urxvt pour ma part...)
@+
Zoroastre.
Dernière modification par zoroastre74 (01-05-2012 10:01:34)
Hors ligne
Dernière modification par bendia (01-05-2012 10:04:55)
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Hors ligne
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Hors ligne
se comporte comme chez toi. Sous gnome avec gnome terminal non.
Nous faudrait une bonne âme secourable là. Perso, je sèche
Ben
Dernière modification par bendia (01-05-2012 16:50:49)
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne
Hors ligne
Dernière modification par bendia (03-05-2012 17:45:40)
Ben
___________________
La seule question bête, c'est celle qu'on ne pose pas.
Hors ligne