[Bash] Affichage uniquement dans URxvt (Résolu)

Applications, problèmes de configuration réseau
Avatar de l’utilisateur
Joan31
Chu Ko Nu
Messages : 319
Inscription : mer. 27 mai 2015, 09:37

[Bash] Affichage uniquement dans URxvt (Résolu)

Message par Joan31 » dim. 22 juil. 2018, 17:20

Bonjour,

J'ai ajouté dans mon .bashrc le lancement de neofetch.

Du coup à chaque lancement du terminal neofetch se lance ce qui me conviens.

Seulement si je me logue via tty, là aussi neofetch se lance et ça j'aime moins.

Alors je cherche à savoir comment créer une condition pour que neofetch se lance uniquement dans une console graphique, terminal comme URxvt.

Merci d'avance pour votre aide.
Dernière modification par Joan31 le mar. 24 juil. 2018, 14:28, modifié 1 fois.
Arch Linux x86_64
Intel Core i7-3770K @3.9GHz | nVidia GeForce 970 GTX
▹ 16Go DDR3 @1600Mhz | SSD 750Go | SSD 275Go

Joan31

avi3000
Chu Ko Nu
Messages : 350
Inscription : dim. 19 juin 2011, 18:53
Localisation : dans le neuf trois

Re: [Bash] Affichage uniquement dans URxvt

Message par avi3000 » dim. 22 juil. 2018, 17:44

Tu peux utiliser la variable $TERM

Avatar de l’utilisateur
Joan31
Chu Ko Nu
Messages : 319
Inscription : mer. 27 mai 2015, 09:37

Re: [Bash] Affichage uniquement dans URxvt

Message par Joan31 » mar. 24 juil. 2018, 14:13

Merci pour ta réponse.

Effectivement c'est bonne idée d'utiliser la variable $TERM.

En tty j'ai ce retour :

Code : Tout sélectionner

echo '$TERM'
linux
Du coup voici le code bash pour ceux à qui cela intéresse :

Code : Tout sélectionner

if [[ $TERM != linux ]]; then
	neofetch
fi
Désormais, quelque soit la console graphique que j'ouvre, j'ai neofetch qui s'affiche. Mais jamais en tty.
Arch Linux x86_64
Intel Core i7-3770K @3.9GHz | nVidia GeForce 970 GTX
▹ 16Go DDR3 @1600Mhz | SSD 750Go | SSD 275Go

Joan31

avi3000
Chu Ko Nu
Messages : 350
Inscription : dim. 19 juin 2011, 18:53
Localisation : dans le neuf trois

Re: [Bash] Affichage uniquement dans URxvt (Résolu)

Message par avi3000 » mar. 24 juil. 2018, 14:47

Code : Tout sélectionner

[[ "$(tty)" =~ '/dev/tty' ]] && echo "est tty " $(tty) || echo "n'est pas tty " $(tty)
fonctionne aussi.
A mon humble avis, c'est plus fiable que le test sur $TERM (compatible BSD ??).

Tu peux écrire ton test :

Code : Tout sélectionner

[ "$TERM" != 'linux' ] && neofetch
ou :

Code : Tout sélectionner

 [[ "$(tty)" =~ '/dev/tty' ]] && neofetch
Dernière modification par avi3000 le mar. 24 juil. 2018, 15:07, modifié 2 fois.

Avatar de l’utilisateur
Joan31
Chu Ko Nu
Messages : 319
Inscription : mer. 27 mai 2015, 09:37

Re: [Bash] Affichage uniquement dans URxvt (Résolu)

Message par Joan31 » mar. 24 juil. 2018, 14:51

Merci pour ta remarque :)
Arch Linux x86_64
Intel Core i7-3770K @3.9GHz | nVidia GeForce 970 GTX
▹ 16Go DDR3 @1600Mhz | SSD 750Go | SSD 275Go

Joan31

Répondre