Portál AbcLinuxu, 6. května 2025 09:21

Dotaz: Jak spouštět bash skripty z dmenu

ghibulo avatar 18.10.2014 19:57 ghibulo | skóre: 6 | blog: ghibulo
Jak spouštět bash skripty z dmenu
Přečteno: 279×
Odpovědět | Admin
Zdravím... chci se zeptat, jestli někoho nenapadá, proč mi nejdou spouštět z dmenu bash-skripty (z terminálu jdou v poho, jejich adresář je v $PATH). Obvykle jde jen o jednoduché...

#! /bin/bash

xrandr --output VGA1 --mode 1024x768 --same-as LVDS1

nebo

/bin/sh javaws /home/ghibulo/bin/cgoban.jnlp

apod.

Předem dík za každý nakopnutí :-)

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Pavel 'TIGER' Růžička avatar 18.10.2014 20:44 Pavel 'TIGER' Růžička | skóre: 54
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkus se podívat sem.
ghibulo avatar 18.10.2014 20:56 ghibulo | skóre: 6 | blog: ghibulo
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Díky za snahu pomoci, ale tvůj odkaz mi bohužel nepomůže.
Fuky avatar 18.10.2014 21:01 Fuky | skóre: 52 | blog: 4u
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Buď sdílnější a napiš nám jak přesně dmenu používáš. Aby šlo Tvůj postup snadno nasimulovat a definovat kde je chyba.
18.10.2014 21:03 gogol
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dopln si do toho skriptu prikaz "env >> ~/enironment.log" a porovnaj co je rozne pri kazdom spusteni z terminalu a z dmenu. Podla odlisnosti hladaj riesenia...
ghibulo avatar 19.10.2014 11:30 ghibulo | skóre: 6 | blog: ghibulo
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Používám distro Debian-Jessie s LXDE. Z běžného repozitáře jsem si nainstaloval dmenu a navázal si ho na zkratku...

keybind key="A-P" action name="Execute" command dmenu_run /command /action /keybind
Vše funguje super, jen spouštět z něj výše uvedené skripty nemohu. Objeví se mi jako nabídka na spuštění, ale nic se neprovede - takže například ten zápis logu "env >> ~/enironment.log proběhne jen když skript spouštím z terminálu.

ghibulo avatar 19.10.2014 11:42 ghibulo | skóre: 6 | blog: ghibulo
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jako by dmenu rozděloval spouštěcí soubory na binárky versus skripty - první spouštěl a druhé jen sliboval, že spustí :-). Například IDE prostředí BlueJ, nainstalované z repozitáře, má smůlu že se spouští přes skript, takže na něj dmenu (narozdíl např.od vlc) použít nemůžu.
Pavel 'TIGER' Růžička avatar 19.10.2014 11:47 Pavel 'TIGER' Růžička | skóre: 54
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
No a v logu nic není? Nikde žádný zápis, proč se to nepovedlo?
19.10.2014 11:57 T.
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Navázání na zkratku není příliš užitečná informace, při ladění je lepší to spouštět z terminálu.

dmenu vypíše na obrazovku předložený seznam a vrátí řetězec, který uživatel vybral. dmenu_run je jednoduchý wrapper, který dělá něco jako
echo "test.sh" |  ${SHELL:-"/bin/sh"}
přičemž "test.sh" získá od uživatele pomocí dmenu. Pokud vám nefungují skripty, pak výše uvedené volání někde selže. Zkuste zjistit proč.
ghibulo avatar 19.10.2014 12:27 ghibulo | skóre: 6 | blog: ghibulo
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Když to spustím z terminálu...

dmenu "$@" < pokus.txt | ${SHELL:-"/bin/sh"}

kde jeden z řádků v pokus.txt je název mého scriptu, tak to spustí v poho. Když to samé spustím pomocí klávesové zkratky v lxde - tak nic. Napadlo mě, že jsem asi při spouštění klávesovou zkratkou někdo jiný - s jiným $PATH, ale to by měl jít spustit alespoň ten bluej, kterej je v /usr/bin ... a nejde
Řešení 1× (Fuky)
ghibulo avatar 19.10.2014 13:02 ghibulo | skóre: 6 | blog: ghibulo
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Povedlo se odhalit ... při spuštění klávesovou zkratkou dmenu operoval s jiným obsahem $PATH a $VMNAME. Kvůli prvnímu nešli moje skripty, kvůli druhému nešel ten BlueJ.

Díky Vám všem... sám bych nad tím hloubal ještě týden O:)
ghibulo avatar 19.10.2014 13:04 ghibulo | skóre: 6 | blog: ghibulo
Rozbalit Rozbalit vše Re: Jak spouštět bash skripty z dmenu
ps... "nešly" ... to z té radosti O:)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.