Linux E X P R E S

Facebook

Kompilátory dávkových souborů a skriptovacích jazyků

Vzpomněl jsem si, jak jsem cca. před rokem hledal způsob zjištění informací u  jednoho svého kamaráda a trenéra. Jet skoro 30 km kvůli pár informacím z jeho PC se mi nechtělo a vzdálenou správu LogmeIn jsem v té době ještě neznal.


Je čistě uživatel a byl v té době schopen jen něco stáhnout a spustit. Aby výpis přesměroval a pak poslal text e-mailem, neprošlo. Tak jsem si řekl, že udělám jednoduchý BAT soubor, který vše vyřeší a pošle ke mně na FTP. Bylo však potřebné napřed vyřešit pár otázek.

Jak zašifrovat jméno a heslo na FTP? Jak docílit, aby si stáhl vše tak, jak je potřeba?

Trochu jsem bádal a laboroval. A ejhle, narazil jsem na něco, co jsem ani netušil, že existuje. Kompilátor BAT souborů na EXE nebo COM. Při vyhledávání toho nejjednoduššího a testování jsem postupně nacházel i další kompilátory - kompilátory skriptovacích jazyků. Přiznám se, že to bylo něco, co jsem nečekal. Nikdy jsem nic takového nepotřeboval a ani v duchu by mne nenapadlo, že to existuje. Dost často byly kompilátory placené, jako freeware jich bylo podstatně méně. (O kompilátoru na PHP jsem již věděl). Ale o kompilátoru pro Python nebo dokonce JavaScript jsem neměl ani páru. Zde mi dovolte alespoň zkráceně podat seznam pár kompilátorů, které mne zaujaly.

Jazyk: Perl (PL -> EXE)

Operační systém: MS Windows, http://tinyperl.sourceforge.net

Syntaxe: tinyperl.exe -bin <source pl file> <target exe file>

tinyperl

Jazyk: Perl (PL -> BIN)

Operační systém: Linux, http://www.perl.org

Syntaxe:	perlcc <source pl file> <target bin file>

Jazyk: BATCH (BAT -> COM)

Operační systém: MS Windows, http://nlsn.free.fr/batch-down/

Syntaxe:	bat2exec.com <source bat file>

bat2exec

Jazyk: BATCH (BAT -> EXE)

Operační systém: MS Windows, http://www.softsland.com/bat_to_exe_converter.html

bat2exe_converter

Jazyk: SHELL (SH -> BIN)

Operační systém: Linux, http://www.datsi.fi.upm.es/~frosal/

Syntaxe:	shc <source sh file>

Jazyk: VBScript (VBS -> EXE)

Operační systém:MS Windows, http://www.sharewareplaza.com/Vbs-To-Exe-download_47283.html

Syntaxe:	vbstoexe.exe <source vbs file> <target exe file>

Další existující kompilátory

JS -> EXE nebo PY -> EXE (http://www.py2exe.org)

Proč zde uvádím tyto informace? Jistě nejsem sám, kdo někdy něco takového potřeboval. Ne všechny kompilátory uměly vše. Někdy byly omezeny obsahem, jindy potřebovaly v PC další podporu při kompilaci (python) nebo v nich nešlo udělat vše pro mne potřebné. Například při kompilaci BAT na COM nemůžete v dávce použít přesměrování. BAT je třeba převést na EXE. Například:

dir c: > pokus.txt

V BAT souboru kompilovaném na EXE se příkaz provede. V COM nikoliv. Já jsem tento problém řešil po svém, pro někoho možná trochu neohrabaně, ale důležitý byl pro mne výsledek.

  1. Udělal jsem si v PHP jednoduchý prográmek na stahování potřebných podpůrných modulů (funkce "copy"), jejich následné spuštění v potřebném pořadí a přesun protokolu přes FTP ke mne na webhosting. Nakonec jsem PHP skriptík překompiloval na EXE.
    <?php 
     copy("http://www.remontsw.eu/pokus.zip","pokus.zip"); 
     system("....."); 
     // přesun přes FTP do serveru 
     // (http://cz2.php.net/manual/en/book.ftp.php) 
    ?>   
    
  2. Pak jsem jen poslal link ke stažení výsledného EXE souboru s příkazem "spusť a na nic se neptej" :-)

Musím se přiznat, že dnes bych tento problém řešil asi poněkud jinak. Nicméně věřím, že tento postup někomu pomůže a nebude muset vše dohledávat tak jako jsem musel já.

Diskuze (3) Nahoru