Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 27/10/2019, à 11:30

Sipo

Notification en cli OK mais...[Résolu]

Bonjour à tous.

J'ai un souci de notification avec un script.
Je vous le présente ici :

#! /bin/bash


#Mes variables

rech=$(zenity --entry --width 600 --height 50 --title="Titre de la video" | sed -e 's/ /+/g')
uri=http://www.google.fr/search?q=${rech}
yt=https://www.youtube.com/watch?v=
cast="mpv"
exec="/usr/bin/w3m" 


vid(){

	$exec $uri | \
	grep https://www.youtube.com/watch?v= | \
	head -n 1 | \
	cut -d '=' -f2 

}

play(){
	
	$cast --geometry=356x200+0+930 --border=no --no-window-dragging | \
	$yt$(vid)
	
}

main(){
	
	play
	
	if [[ $? != 0 ]]
		then 
	
			notify-send "Recherche non trouvée."
	fi
}

main

À savoir : j'exécute ce script via Openbox à l'aide de son rc.xml :

<keybind key="F12">
    <action name="Execute">
      <startupnotify>
        <enabled>true</enabled>
        <name>Recherche YouTube</name>
      </startupnotify>
      <command>sh /home/sipo/Documents/Scripts/music.sh</command>
    </action>
  </keybind>

Le problème :

Lors de l'exécution du script via le terminal, celui-ci me notifie correctement qu'il n'a pas trouvé la vidéo. La condition fait donc le job.

En revanche, lors de l'appel du script via le raccourci Openbox, la notification ne s'exécute pas.

Avez-vous un indice sur cette panne ?

En vous remerciant d'avance. smile

Cordialement.

Dernière modification par Sipo (Le 31/10/2019, à 20:18)

Hors ligne

#2 Le 27/10/2019, à 12:43

credenhill

Re : Notification en cli OK mais...[Résolu]

hello
essayer d'ajouter dans le script

export DISPLAY=:0

Hors ligne

#3 Le 27/10/2019, à 13:36

Sipo

Re : Notification en cli OK mais...[Résolu]

Malheureusement, ce n'est pas la solution. sad

De plus, la variable d'env est déjà déclarer :

$ echo $DISPLAY
:0

Je suspecte un problème du style PID, ou un truc process parent-enfant. (Mais bon, j'dis peut-être n'importe quoi tongue)

Je continue mes recherches...

Hors ligne

#4 Le 27/10/2019, à 16:09

credenhill

Re : Notification en cli OK mais...[Résolu]

ca c'est dans le terminal, essayer de mettre la ligne dans le script

Hors ligne

#5 Le 27/10/2019, à 18:14

Sipo

Re : Notification en cli OK mais...[Résolu]

Non, ça ne fonctionne pas malgré que la ligne soit dans le script.:(

Hors ligne

#6 Le 28/10/2019, à 12:44

credenhill

Re : Notification en cli OK mais...[Résolu]

essayer de modifier cette ligne pour exécuter bash et récupérer messages et erreurs

<command>bash /home/sipo/Documents/Scripts/music.sh > /tmp/log1 2>&1</command>

Hors ligne

#7 Le 28/10/2019, à 13:10

metalux

Re : Notification en cli OK mais...[Résolu]

Bonjour,
J'ai déjà rencontré un problème similaire avec un script lancé à partir d'un lanceur dans le tableau de bord sur Xubuntu. En fait c'était un problème de chemin et il m'a fallu rajouter ces 2 lignes en début de script:

path=$(dirname $0|sed -e 's/ /\\ /g')
    cd "$path"

Bien que je ne suis pas sûr que ce soit la raison, tu peux déjà essayer afin de voir si ça ne vient pas de là.

Hors ligne

#8 Le 31/10/2019, à 20:17

Sipo

Re : Notification en cli OK mais...[Résolu]

Merci pour vos réponses.

C'est résolu et...j'ai honte ! hmm

J'appelle mon script avec la commande sh dans mon Openbox or, mon script a les caractères du Bash !

Le test [[  ]] n'est valable que sur un Shell Bash et...c'est sur que si j'appelle mon script avec la commande "sh" et non ./ ou "bash" bah..ça marche moins bien ! tongue

Hors ligne