Portál AbcLinuxu, 24. dubna 2024 15:59


Dotaz: spouštění aplikací přes terminál jenoduchým příkazem

18.2.2012 17:31 Dan.K.
spouštění aplikací přes terminál jenoduchým příkazem
Přečteno: 1834×
Odpovědět | Admin
Zdravím. Mam tomcat a eclipse. Rad bych se zeptal jak bych je mohl jednoduse spoustet pres terminal? Tak, aby mi stacilo napsat "tomcat start" a "tomcat stop" a pro eclipse jen "eclipse" a podle toho se spustili prislusne soubory:

/media/moje/programy/tomcat/bin/startup.sh
/media/moje/programy/tomcat/bin/shutdown.sh
/home/dan/programovani/eclipse/eclipse

Nejspise je potreba vytvorit nejake soubory pro spousteni, ze ano? Ale jak by mely vypada a hlavne kam by se meli umisti
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

examon avatar 18.2.2012 18:27 examon | skóre: 15 | Trnava
Rozbalit Rozbalit vše Re: spouštění aplikací přes terminál jenoduchým příkazem
Odpovědět | | Sbalit | Link | Blokovat | Admin
http://celettu.wordpress.com/2009/04/06/howto-create-launchers-using-easy-bash-scripts/
Indiánský lotr avatar 18.2.2012 18:49 Indiánský lotr | skóre: 24 | blog: ucim_sa
Rozbalit Rozbalit vše Re: spouštění aplikací přes terminál jenoduchým příkazem
Odpovědět | | Sbalit | Link | Blokovat | Admin

do souboru /home/uzivatel/.bashrc pridej

alias tomcat-start='bash /media/moje/programy/tomcat/bin/startup.sh'

znovu zapni terminal a uz tam bude dalsi prikaz tomcat-start

18.2.2012 18:55 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: spouštění aplikací přes terminál jenoduchým příkazem
Odpovědět | | Sbalit | Link | Blokovat | Admin
Začnu odzadu -- umístit je musíte do nějakého adresáře, který máte v cestě (proměnná $PATH). Já mám pro tenhle účel adresář bin v mém domácím adresáři a ten jsem si přidal do cesty. Pro eclipse bych si tam pak jen vytvořil soubor eclipse s obsahem
#!/bin/sh
/home/dan/programovani/eclipse/eclipse
a nastavil mu právo ke spuštění.

U toho Tomcatu by ten skript byl o fous složitější, protože byste tam musel rozhodovat podle prvního parametru. Já osobně bych si ale raději udělal dva skripty -- tomcat-start a tomcat-stop, nebo místo prvního třeba tomcat-run. Dá se pak s výhodou použít doplňování v shellu a nemusíte ten příkaz celý psát. Takové ZSH by se určitě dalo naučit i na ty parametry k tomu skriptu, ale takhle to mám bez práce...

Také by se to dalo řešit aliasem v shellu, ale to bych v tomto případě nedělal -- pak budete chtít něco složitějšího, a stejně budete muset použít skript.
18.2.2012 20:09 l4m4
Rozbalit Rozbalit vše Re: spouštění aplikací přes terminál jenoduchým příkazem
Já bych tam tedy vytvořil symlink, což (a) je jednodušší (b) je efektivnější (c) funguje identicky jako ten původní program (např. tomu jdou předat argumenty...):
ln -s /home/dan/programovani/eclipse/eclipse /home/dan/bin/
A totéž pro ty start/stop příkazy.

Alias je věc pouze shellu, a ten bych nepoužil už vůbec: se symlinkem není problém, aby mohly i jiné programy spouštět prostě ,eclipse` a nepotřebovaly cestu.
18.2.2012 20:36 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: spouštění aplikací přes terminál jenoduchým příkazem
Tohle je dost specifické použití, většinou se takovéhle zkratky používají spíš pro případy, kdy právě potřebujete spustit program s nějakými parametry. Ale v tomto konkrétním případě by symlink také mohl fungovat (pokud cílový program nezmate aktuální adresář nebo název spuštěného příkazu).
18.2.2012 20:53 l4m4
Rozbalit Rozbalit vše Re: spouštění aplikací přes terminál jenoduchým příkazem
pokud cílový program nezmate aktuální adresář nebo název spuštěného příkazu
V opačném případě se cílový program zabalí do krabice a pošle strojem času zpět do 80. let ;)

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.