Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: IceMan.Ubuntu 21 Července 2016, 22:39:29
-
Zdravím všechny . . . a nejvíc ty, kteří umějí psát scripty :D
Našel by se zde někdo, kdo by mi napsal script, který udělá následující věci?
1:
Zjistí absolutní cestu k výchozímu dočasnému adresáři (default temporary directory, dále jen DTD) operačního systému, na kterém je spuštěn.
2:
Vytvoří do tohoto adresáře zástupce (Symbolic Link) na soubor program.jar, který se nachází ve stejném adresáři jako spouštěný script.
3:
Spustí soubor program.jar
______________________________________________________
Jak vidíte, script bude spouštět desktopovou java aplikaci, proto by bylo vhodné, aby i samotný script fungoval na všech operačních systémech, na kterých lze spustit tuto java aplikaci, což jsou OS Windows, Linux a MacOSX.
Výchozí dočasný adresář daného OS je např.
- v Ubuntu "/tmp"
- ve Windows se to liší podle verze Windows atd.
Jde o adresář, který získám v java aplikaci napsáním příkazu System.getProperty("java.io.tmpdir");
Předpokládám, že script by používal také nějaký příkaz, který s daného OS, na kterém je právě spuštěn, vytáhne tu absolutní cestu k DTD. Zadávání absolutních cest přímo do scriptu formou řetězců je nežádoucí, takové řešení by nebylo přenositelné.
Děkuji za odpovědi . . .
-
Pro inspirace se hodí nějaký multiplatformní program. Například squirrel-sql má pro spuštění dva soubory squirrel-sql.sh a squirrel-sql.bat. Řeší i kontrolu Javy a v sh je i rozpoznávání Mac/Linux. Možná by je stačilo upravit, tj. přidat a použít jenom výstup z Javy System.getProperty("java.io.tmpdir").
-
A co se skriptu úplně vyhnout a napsat si konzolovou aplikaci?