J'ai ce script dans mon /home/username/
Et je peux l'exécuter via un terminal avec le code suivant
./script.sh
ou
sh script.sh
ça marche (il a des permissions exécutables)
mais je ne peux pas l'attribuer à un raccourci clavier. J'ajoute les raccourcis avec l'onglet "raccourci personnalisé" des raccourcis clavier. Et aussi essayé avec xbindkeys, aussi.
Ce que j’ai essayé jusqu’à présent, c’est de les ajouter à la commande de la touche de raccourci.
bash "/script.sh"
bash "./script.sh"
bash "home/username/script.sh"
home/username/script.sh
sh "/script.sh"
"/script.sh"
/script.sh
gnome-terminal "/home/username/script.sh
et beaucoup d'autres dont je ne me souviens plus.
Quelqu'un peut-il dire le problème?
Pour ajouter un script à un raccourci clavier:
$PATH
(comme ~/bin
), utilisez le chemin complet pour le script, n'utilisez pas ~
ni les chemins relatifs.Si vous utilisez le chemin complet, commencez (comme toujours) par une barre oblique, par exemple:
sh /home/username/script.sh
Votre exemple ne le fait pas :)
Si votre script est exécutable, il suffit de le chemin complet fera:
/home/username/script.sh
si ce n'est pas le cas, utilisez le langage précédent, par exemple:
sh /home/username/script.sh
Dans les tentatives que vous montrez, vous utilisez des chemins incorrects (home/some_dir
n’est pas un répertoire valide sans barre oblique de départ), vous utilisez un autre chemin que vous voulez utiliser (/script.sh
fait référence à votre répertoire racine) ou vous utiliser des chemins relatifs. Aucun d'entre eux ne fonctionnera à partir d'une touche de raccourci.
Les mêmes règles s'appliquent aux applications de démarrage en passant.
Un problème supplémentaire dans ce cas:
xdotool
dans le scriptD'après un commentaire, nous avons découvert que le script que vous exécutez utilise une commande xdotool
en appuyant sur les touches:
#!/bin/bash
xdotool keydown Super key w
sleep 0.5
xdotool keyup Super
Appuyer virtuellement sur les touches depuis une combinaison de touches de raccourci entraînera presque toujours des conflits de touches, puisque les touches vous physiquement appuyez sur, sera combiné avec ceux que vous appuyez virtuellement .
Une façon d’éviter le problème consiste à donner à vos doigts le temps de "laisser" les touches, afin d’éviter que les touches réelles ne soient combinées avec les touches virtuelles. Même dans ce cas, vous devez libérer le raccourci après l'avoir appuyé. Le script devient alors:
#!/bin/bash
# here we add a little break to give your fingers
# the opportunity to release the keys
sleep 0.5
xdotool keydown Super key w
sleep 0.5
xdotool keyup Super
Si le problème persiste, augmentez le temps de la ligne 4 (et appuyez brièvement sur la touche de raccourci).